(LAMP服务器配置)
作为另一个问题的解决方法,我需要PHP能够访问本地文件,但是防止这些文件由Apache提供给http。
通常情况下,我会使用.htaccess来实现这一目标,但由于制度上的限制,我不能。我也无法触摸php.ini,虽然我可以在php中使用php_ini_set。
作为一个创造性的解决方案,我认为如果php作为自己的linux用户(而不是apache)执行,我可以使用普通的chown和chmod来完成此任务。
同样,目标只是拥有一个apache不会显示的文件目录,但是php可以访问。
我愿意接受任何建议。
答案 0 :(得分:5)
将文件置于Web可访问的根目录(DocumentRoot
)之外,但可以通过PHP访问它们。
建议:
/sites
/sites/my.site.com
/sites/my.site.com/data // <-- data goes here
/sites/my.site.com/web // <-- web root is here
答案 1 :(得分:2)
这是一个想法。将文件的权限设置为即使是所有者也无法访问,然后当PHP需要它们时,chmod()
然后阅读它们,然后chmod()
将它们恢复为无法访问。