[英].htaccess Rewrite except one subfolder
我的.htaccess中有一些重写规则,并且我想添加一个例外子文件夹,以便当用户链接到该子文件夹时,mod_rewrite会停止重写。
我特殊的子文件夹是http://simplyservices.gr/aivali当有人到达此URL时,mod_rewrite遵循我添加的规则,最终用户看不到aivali的内容这是我的.htaccess
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/aivali/ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([^/]*)\.html$ /new1/products.php?kategory=$1 [L]
RewriteRule ^([^/]*)/([^/]*)\.html$ /new1/products.php?kategory=$1&subkategory=$2 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)\.html$ /new1/products.php?kategory=$1&subkategory=$2&id=$3 [L]
我已经尝试了同一篇文章中提到的所有内容,但没有任何效果。 我认为这在我的RewriteRules中有问题。
谢谢
RewriteConds仅掩盖每个下面的RewriteRule。
因此,您的!-f
, !-d
和!-d
检查仅适用于第一次。 除非确实有dir/dir/*.html
文件,否则一开始可能是多余的。
现在更有趣的是RewriteCond %{REQUEST_URI} !^/aivali/ [NC]
也只是掩盖了第一个RewriteRule。 但是第一个RewriteRule只匹配basename.html
,从不匹配aivali/sub.html
东西
您应该将RewriteCond-exception移动到第二个RewriteRule的前面,因为那是主要捕获它的那个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.