我在这里看到很多关于由于LAMP权限而无法访问文件的问题,但没有关于http客户端使用权限使文件无法访问的问题 .
我的Apache2根文件夹中有文件和文件夹,我不希望人们通过浏览器或其他外部方式访问 . 我将权限设置为770,但这似乎不够 . 外部用户是否以apache用户身份访问文件?我在Ubuntu Server下运行LAMP,对默认设置几乎没有修改,因此我的apache用户是www-data,group是:www-data,apache root是/ var / www .
我有一个/ var / www / _private文件夹,其文件具有770权限和相同的权限 . 但是,如果我通过浏览器访问这些文件,它们仍然可以查看 . 客户端是否以www-data用户身份访问我的文件?如果是这样,我该如何纠正?
我已经在托管设置上工作,将“其他”权限设置为0足以拒绝外部直接访问文件 . 我是否需要安装一些额外的模块才能获得此功能?
注意:我仍然需要可访问客户端的PHP脚本来通过includes,fopen等访问这些文件...
1 回答
好吧,对,770意味着文件的所有者和组可以读取,写入和执行它 . 我猜测Apache是该文件的所有者,因此允许它访问它并向全世界开放 .
为什么不使用
.htaccess
文件,而不是修改服务器上的权限,并可能导致文件的可访问性受到损害 . 它将指示Apache在某些情况下执行操作,例如拒绝访问文件 . 只需在网站的根目录中创建.htaccess
文件即可并且你将拒绝所有人使用Apache访问它 .
如果你想拒绝整个目录: