如何禁止直接访问浏览器网址中的网站目录,但如何允许网站在内部对其进行请求?

时间:2018-10-29 17:21:10

标签: php mysql apache .htaccess nginx

我在运行带有php / mysql后端网站的Apache + Nginx Hybrid服务器设置中。

出于安全原因,我试图限制用户直接访问我网站的内部文件夹/目录(如css,Js和其他随附的php文件)。

例如,如果用户在浏览器URL中输入https://mywebsite.com/csshttps://mywebsite.com/included-php-files/ 那么应该会给他403禁止目录访问错误。

但是当必须通过Ajax请求或内部包含中的index.php之类的内部文件访问这些目录时,应允许这些目录进行访问。

我尝试了许多解决方案,但它们甚至永久禁止访问我的网站内部文件。

/css
/Js
/admin
/sitemap/sitemap files/

这些是我的网站目录的示例,我需要将其隐藏起来,以防止用户直接访问而滥用它们。

最后我尝试的是在每个要停止直接外部访问的文件夹中添加一个空的index.php文件,这样当用户尝试访问这些文件夹或目录时,它将显示空白页面。

但是我希望是否还有其他更好的方法,例如使用nginx或apache吗?

请帮助我。

如果需要进一步澄清该问题,我会进行更新。

1 个答案:

答案 0 :(得分:2)

仅使用.htaccess文件 将以下行放入您的.htaccess文件

Options -Indexes