我有这个.htaccess文件(我从这里和网上的其他答案中得到):
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ ./$1.php
但是,如果用户手动输入不存在的地址,则会返回500内部服务器错误。我有什么方法可以阻止这个?感谢。
答案 0 :(得分:2)
尝试替换此条件:
RewriteCond %{REQUEST_FILENAME}.php -f
与
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI}.php -f
因为%{REQUEST_FILENAME}
检查脚本的路径信息和其他可能的匹配项。这避免了在URI的末尾添加.php
。