PHP 读取权限混乱

PHP 读取权限混乱

我会尽量说得清楚。在我运行 ubuntu 14 的服务器上,我安装了mutlicraft(minecraft 控制面板)。上传服务器后,我注意到服务器无法运行。这是因为每个服务器都需要自己的用户。在我的情况下,我必须将所有权从root用户更改为mc1。我不小心输入了chown -R mc1 * 是的!我输入了-R有关用户的所有内容并承担了它们的所有权mc1

目录:

Multicraft 服务器目录:/home/minecraft/servers/server1

Multicraft 网络面板:/var/www/multicraft

实际问题

执行此操作后,面板无法访问。为什么?因为:

2014/10/10 16:19:07 [error] 1368#0: *15 FastCGI sent in stderr: "PHP message: PHP Fatal error:            Uncaught exception 'CException' with message 'Application runtime path             "/var/www/multicraft/protected/runtime" is not valid. Please make sure it is a directory writable by  the Web server process.' in /var/www/multicraft/protected/yii/base/CApplication.php:271
Stack trace:
#0 /var/www/multicraft/protected/yii/base/CApplication.php(258): CApplication-   >setRuntimePath('/var/www/multic...')
#1 /var/www/multicraft/protected/yii/base/CStatePersister.php(67): CApplication->getRuntimePath()
#2 /var/www/multicraft/protected/yii/base/CModule.php(388): CStatePersister->init() 
#3 /var/www/multicraft/protected/yii/base/CApplication.php(458): CModule->getComponent('statePersister')
#4 /var/www/multicraft/protected/yii/base/CApplication.php(651): CApplication->getStatePersister()
#5 /var/www/multicraft/protected/yii/base/CApplication.php(592): CApplication->loadGlobalState()
#6 /var/www/multicraft/protected/yii/base/CSecurityManager.php(101): CApplication->getGlobalState('Yii.CSecurityMa" while reading response header from upstream, client: 85.74.3.56, server: localhost, request: "GET /multicraft/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "37.59.112.131"

完成此操作后,我点击chown -R mc1 *以反转操作,它起作用了,除了www

可以修复这个问题吗?

答案1

从您粘贴的内容来看,问题似乎在于 Web 服务器用户在此文件夹“/var/www/multicraft/protected/runtime”中没有写权限

这可能与您的所有权变更有关。您可以保留您想要的用户,但请确保您的 Web 服务器用户可以写入目录。您可以使用组来实现这一点(创建一个包含您的用户、minecraft 用户和 Web 服务器使用的组,并授予该组对 www 文件夹的写入权限,执行 chown mc1:group /var/www/)或者您可以为 webpanel 文件夹设置 777 权限(如果您的机器有除您之外的普通用户,则不安全)

我希望我没有误解你的问题。

相关内容