下面是我的.htaccess文件。我试图排除应用于/ admin /文件夹的重写规则,但是经过一个小时的研究和尝试各种代码后,我已经到了墙上。
Options -MultiViews
RewriteEngine On
RewriteBase /
# Exclude admin directory
RewriteRule ^(admin|admin)($|/) - [L]
RewriteRule ^privacy$ pages/privacy.php [NC,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/(.+)$ products.php?q=$3&rewrite=1&%{QUERY_STRING} [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)/$ search.php?q=bw:&categoryFilter=$1&genreFilter=$2%{QUERY_STRING} [L,B]
RewriteRule ^(.*)/$ pages/format.php?format=$1 [NC,L}
RewriteCond %{REQUEST_URI} !(/$|\.)
RewriteRule (.*) %{REQUEST_URI}/ [R=301,L]
上面的代码带来内部500错误,如果我删除它会将我重定向到格式的重写规则。我在读这个排除重写规则需要放在我要覆盖的规则之前。我不明白为什么它不起作用,我错过了什么。
感谢。
答案 0 :(得分:0)
尝试以这种方式编写规则。
# Exclude admin directory
RewriteRule ^admin/?$ - [L]
答案 1 :(得分:0)
您的.htaccess中存在语法错误。
让你的.htaccess像这样:
int n;
if ((n = read(input, buffer_header, 4)) > 0) {
image_width = bytesToInt(buffer_header);
} else if (n == -1) {
perror("read");
} else {
printf("EOF\n");
}