如何禁止直接访问浏览器url中的网站目录,但允许网站在内部请求它们?

mwngjboj  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(645)

我有apache+nginx混合服务器安装运行一个带有php/mysql后端的网站。
出于安全原因,我试图限制用户直接访问我网站的内部文件夹/目录,如css、js和其他包含的php文件。
例如,如果用户键入https://mywebsite.com/css 或者https://mywebsite.com/included-php-files/ 在浏览器的url中则应该给他403个禁止目录访问的错误。
但是,当这些目录必须通过内部文件(如ajax请求中的index.php或内部包含文件)进行访问时,应该允许这些目录进行访问。
我已经尝试了很多解决方案,但他们永久性地阻止访问,甚至我的网站内部文件。

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

这些是我的网站内我的目录的例子,我需要隐藏他们从直接访问的用户滥用他们的使用。
我尝试过的最后一件事是,我在每个文件夹中添加了一个空index.php文件,在这些文件夹中,我希望停止直接外部访问,这样当用户尝试访问这些文件夹或目录时,它将向他们显示空页。
但我希望是否有其他更好的方法,比如nginx或apache?
请帮帮我。。
我会更新,如果需要更清楚的问题。。

f5emj3cl

f5emj3cl1#

只要使用.htaccess文件,就可以在.htaccess文件中插入以下行

Options -Indexes

相关问题