【发布时间】:2017-11-04 09:43:39
【问题描述】:
我的 htaccess 文件中有以下规则来删除 .php 扩展名并执行 301 重定向到无扩展名 URL:
# 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 内部服务器错误。如果我删除第一组规则,第二个规则将再次起作用。因此,这两组规则存在一些冲突。
【问题讨论】:
标签: apache .htaccess mod-rewrite