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


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

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

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 代码完成的所有功能的同时,最有效的方法是什么?

在"全部捕获"规则之前添加特定的重写规则,在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隐身窗口。

你可以这样做:

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

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

相关文章: