Htaccess规则未应用

时间:2017-11-04 09:43:39

标签: apache .htaccess mod-rewrite

我的htaccess文件中有以下规则,用于删除.php扩展名并执行301重定向到无扩展名网址:

# To remove .php extension
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\ (.*)\.php [NC]
RewriteRule ^ %1 [R=301,L]

# To check whether the file exists then set it back internally
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^.*$ $0.php [L]

我想在PHP文件中应用以下规则:

RewriteRule ^test/([0-9]+)$ test.php?id=$1 [L]

上述规则导致500内部服务器错误。如果我删除第一组规则,则第二条规则再次起作用。因此,这两套规则都存在一些冲突。

1 个答案:

答案 0 :(得分:-1)

您必须在RewriteEngine On中使用.htaccess启用RewriteEngine。

如果您收到错误,请检查error logs上的WebServer - 在这里您可以找到答案,500' error出现的原因。