Yii / Linux上的Web进程权限

时间:2012-07-14 07:12:00

标签: linux permissions yii gii

我是一名菜鸟并在AWS上运行Yii教程。到目前为止,我已经能够启动并运行 - 包括mysql连接。但现在我正在使用Gii代码生成工具来帮助创建一些模型类。这样做,我收到以下错误:

generating models/User.php
            Unable to write the file '/var/www/html/blog/protected/models/User.php'.
done!

文档还告诉我:

Info: Because the code generator needs to save the generated code into files, it is
required that the Web process have the permission to create and modify the corresponding
 files. For simplicity, we may give the Web process the write permission to the whole
 /www/blog directory. Note that this is only needed on development machines when using Gii.

这对我有意义,我理解应用于用户和组的Linux权限的基本逻辑......但不是进程。有人能指点我介绍如何给GII进程写入webroot的权限(在我的情况下:/ var / www / html / blog /)目录吗?

4 个答案:

答案 0 :(得分:10)

我赋予所有用户递归读取,写入和执行webapp文件的权限。

$sudo chmod -R og=rwx webapp_folder

并解决了许可问题,但这可能不是最好的方法。

答案 1 :(得分:5)

Gii使用由webserver用户生成的进程来读写文件。然后,该用户需要具有写入文件的权限。在Debian / Ubuntu上,用户是www-data。检查它的操作系统是什么,并授予该用户在该文件夹中的写权限。

答案 2 :(得分:3)

在httpd.conf文件中有以下行:

#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User daemon
Group daemon

用户和httpd组是“守护进程”。现在在终端中键入以下命令:

chown -R daemon:daemon /path/to/htdocs/directory

有时必须在类型

之后执行此命令
sudo su

现在Gii可以使用chmod 775权限将文件写入受保护的文件夹

答案 3 :(得分:1)

仅供参考,如果由命令创建的命令文件夹或目录,您可以编写文件用户浏览器,反之亦然......但是要访问yii的写入权限..

按照这个

sudo chmod -R 0777 your_project_name/