我正在考虑启用FastCGI来处理我所有域上的PHP执行。前几天我试了一下,结果遇到了一个PHP配置问题。
目前,我的服务器上有一个php-browscap.ini,可供所有域使用。它位于“我的公司”域目录中,因此如下所示:
browscap = /var/www/vhosts/mycompany.com/httpdocs/scripts/php_browscap.ini
为了让它工作,我通常不需要做任何事情,因为apache用户可以访问所有的web目录。
但是,既然用户必须是特定于域的,我就有访问browscap的权限问题。有人知道我可以在我的PHP配置中实现的允许访问另一个域目录的修复程序吗?
我不想在每个域目录中都放置一个browscap文件,尽管我知道这是一个修复方法
如果我把文件放在web目录之外,它会工作吗?
e.g. /company/php-browscap.ini
其中“company”是根目录中的自定义文件夹,其中包含服务器的脚本。我没有尝试过,因为它需要很多改变,但如果我知道它会工作,我会给它一个尝试。
最佳答案
如果您将browsecap.ini文件放在具有world read权限的目录中(例如755 drwxr-xr-x),那么FastCGI(或任何用户)都可以读取该文件。这样的目录可以是/usr/lib/php
(如果存在)或/usr/share
。
如果您将文件设为744,那么所有用户都可以读取它,但不能删除或修改它,只要所有的父目录也是世界可读的。