Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 使用htaccess跳过目录_.htaccess_Mod Rewrite - Fatal编程技术网

.htaccess 使用htaccess跳过目录

.htaccess 使用htaccess跳过目录,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,所以我在我的htaccess文件中有这个来处理尾部斜杠问题。每次在url上添加尾随斜杠时,它都会重定向您 这里的问题是,有一个目录需要后面的斜杠,否则它会断开。如何为类似于此规则的目录添加异常。最简单的理解方法是使用附加条件: RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ [NC] RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L] 这是因为执行顺序是rule.regexp、cond1、con

所以我在我的htaccess文件中有这个来处理尾部斜杠问题。每次在url上添加尾随斜杠时,它都会重定向您


这里的问题是,有一个目录需要后面的斜杠,否则它会断开。如何为类似于此规则的目录添加异常。

最简单的理解方法是使用附加条件:

RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
这是因为执行顺序是rule.regexp、cond1、cond2、rule.substitution。因此,$1变量可用于(新)cond1。您还可以对regexp使用否定断言

顺便提一下,在http的[R=301]的情况下,假定
http://%{http_HOST}/
。为什么不想删除其他主机别名的
/

RewriteCond $1           !=com
RewriteCond %{HTTP_HOST} ^(www.)?example\.com$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]