我正在使用mod_rewrite来获得更好的网址。因此,目前有两种方法可以访问页面:
访问该网站的唯一方式应该是mod_rewrite。换句话说,我想把某些uris“白名单”并阻止每一个不同的uri。
我想过有一个带有“END”标志的RewriteRules列表,所以如果上述规则都不匹配,最后一个规则将阻止请求。这有效,但它也阻止我的index.php网站。此外,这并不是“感觉”最好的方式。
答案 0 :(得分:1)
可以使用RewriteCond
重定时某些页面,RewriteRule
可以捕获所有回复404错误。
# if the request uri is not /mypage.php and /otherpage.php
RewriteCond %{REQUEST_URI} !^/(mypage|otherpage)\.php
# if the request uri is not /startpage
RewriteCond %{REQUEST_URI} !^/startpage
# response 404 error
RewriteRule ^ - [R=404,L]