在Apache / Linux服务器上,如果用户在页面名称后输入尾随的“/”(或“/”之后的任何内容),如何将用户重定向到错误404页面?
例如,此网址应指向错误页面:
http://www.example.com/contactus.php/someextrastuffhere
然而,此网址不应:
http://www.example.com/contactus.php?name=john+smith&email=johnsmith@webpage.com
但是,后一个网址会破坏我的网站。
这可以通过简单的.htaccess
指令来解决吗?
答案 0 :(得分:3)
您可以将此规则作为根目录中的第一条规则.htaccess:
RewriteRule ^.+?\.(php|html?)/ - [L,R=404,NC]
这会向{404}发送任何/file.php/foo
请求,而http://www.example.com/contactus.php?name=john+smith&email=johnsmith@webpage.com
不会受到影响。