我在 Linux 服务器 (CentOS) 上运行我的 ZF2 项目。
每次设置新项目时,我总是遇到同样的问题。授予我的 ZF2 公用文件夹什么权限?
每个服务器设置都略有不同,有时我在一台服务器上使用的权限与另一台服务器不同。
对于我的项目,我使用缓存系统将文件复制到公共(public)文件夹,因此我自然需要授予系统写入权限以创建各种文件夹。
我目前正在做的是:chmod 757 public
我不是 100% 确定这是否是 ZF2 公共(public)目录的最佳设置,有什么建议?
最佳答案
好的,经过一些研究和 IRC 上的一些问题后,公用文件夹的最佳设置似乎是:755
现在您可能会发现在使用 AssetManager 之类的东西时,PHP 无法写入公共(public)目录。要解决此问题,您需要找出 PHP 正在使用的用户。
为此,我做了以下工作:
1. Ran this command in my code: print shell_exec( 'whoami' );
这会将用户返回为“nobody”
接下来,我通过 SSH 进入我的服务器并导航到 pre-public 文件夹并运行以下命令以找出公共(public)文件夹设置为:
2. Ran this command: ls -lah
这返回了以下内容:
drwxr-xr-x 3 router router 4.0K Apr 22 21:29 public/
3. Changed owner of public: chown nobody:nobody public
最后我设置了公用文件夹的权限:
4. chmod 755 public
现在我的公用文件夹设置为最大允许设置...
关于linux - Zend Framework 2 中公用文件夹的最佳设置是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29701365/