繁体   English   中英

HTACCESS:如何阻止对所有文件和文件夹的访问,但是在某些情况下重定向到某个PHP文件

[英]HTACCESS: How to block access to all files and folders, but redirect to a certain PHP file in certain case

我成功地使网站黑客无法使用此.htaccess列表访问实际文件夹(如果在主URL之后键入非文件夹名称,甚至无法获得404消息):

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . / [L,R=301]

很好 但是,我希望情况是, 如果有人在URL后面添加文本ABC,则该站点将重定向到XYZ.PHP。 例如:

www.mysite.com/abc

...重定向到:

www.mysite.com/xyz.php

(显然,ABC和XYZ只是实际文本的占位符。)在保留上述.htaccess代码完成的所有工作的同时,最有效的方法是什么?

你可以这样做:

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^abc$ "/xyz.php" [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . / [L,R=301]

更新:正如@bloodyKnuckles注意到的那样, /丢失了。

在“ catch-all”规则之前添加特定的RewriteRule,在xyz.php之前使用正斜杠/xyz.php在我的设置中使用。

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^abc$ /xyz.php [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . / [L,R=301]

使用正斜杠指示apache在Web服务器根目录中查找替换路径。 (请注意,重定向( R=301 )是在我的浏览器中缓存的,因此每次进行更改时,我都诉诸于打开一个新的chrome隐身窗口。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM