在我的htaccess中我有这个规则。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ $1\.php
我的php扩展现在不在我的网址上了。
但事情是......
如果用户最后输入.php,它将加载页面。
有没有办法可以阻止来自网址的.php?
答案 0 :(得分:4)
如果客户端发送THE_REQUEST
个文件的直接请求,您可以使用带.php
变量的附加规则发送禁止错误:
RewriteEngine On
RewriteCond %{THE_REQUEST} \.php[/\s?] [NC]
RewriteRule ^ - [F]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]
答案 1 :(得分:2)
添加此
RewriteRule ^.*?\.php$ forbidden [F,L]
答案 2 :(得分:0)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*?\.php$ forbidden [F,L]
</IfModule>