.htaccess 寻找有关mod_重写和htaccess的建议
我对htaccess没有经验。。。但我正在创作一个网站,我正在使用一个简单的重定向。我基本上只是复制了我发现的第一个htaccess,它工作得很好,但是我很好奇我是否正确地使用了它和/或它是否对我在网站上遇到的一些问题负责 这是我的档案.htaccess 寻找有关mod_重写和htaccess的建议,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我对htaccess没有经验。。。但我正在创作一个网站,我正在使用一个简单的重定向。我基本上只是复制了我发现的第一个htaccess,它工作得很好,但是我很好奇我是否正确地使用了它和/或它是否对我在网站上遇到的一些问题负责 这是我的档案 RewriteEngine On Exclude some directories from URI rewriting RewriteRule ^(dir1|dir2|dir3) - [L] RewriteRule ^\.htaccess$ - [F]
RewriteEngine On
Exclude some directories from URI rewriting
RewriteRule ^(dir1|dir2|dir3) - [L]
RewriteRule ^\.htaccess$ - [F]
RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /src/index.php [NC,L]
RewriteCond %{REQUEST_URI} !^/src/.*$
RewriteRule ^(.*)$ /src/$1
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]
RewriteRule ^src/.*$ /src/index.php [NC,L]
php(如您所知)位于/src)中,与站点中的大多数pf一样。
我遇到的一个问题是,访问一些include会导致返回index.php
如果您有任何关于htaccess的建议、指导或文章,我们将不胜感激
谢谢我不得不说这里的很多代码看起来是多余的。将代码替换为以下内容:
RewriteEngine On
RewriteRule ^\.htaccess$ - [F]
RewriteCond %{REQUEST_URI} ^/(dir1|dir2|dir3) [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteCond %{REQUEST_URI} !^/src/.*$
RewriteRule ^(.*)$ /src/$1 [L]
RewriteRule ^src/.*$ /src/index.php [NC,L]
另外,当您说访问一些include时,会导致收回index.php代码>我希望您只是像这样包含它们:
include('path/to/somefile.php');
这将不会通过.htaccess
,因为此包含对Apache是透明的。尝试结合一些规则:
RewriteEngine On
# Exclude some directories from URI rewriting
RewriteRule ^(dir1|dir2|dir3) - [L]
# block access to the htaccess file
RewriteRule ^\.htaccess$ - [F,L]
# route "/" requests to index.php
RewriteRule ^$ /src/index.php [L]
# route requests that exists in /src/ to /src/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/src%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/src%{REQUEST_URI} -d
RewriteRule ^(.*)$ /src/$1 [L]
# route everything else to /src/index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /src/index.php [L]