我做了什么:
执行$ ./vendor/bin/phing后 - 我收到错误
Phing ERROR:
[phing] FileSystem :: chown()FAILED。无法chown /Users/nomad/Projects/BuildingWithPhing/logs/application.log。用户www-data。
我的期望:
我希望Phing能够写入自己的日志文件
设置
我安装了Phing with Composer
"require": {
"phing/phing": "2.5.0"
}
我将我的环境设置为使用MAMP PHP版本5.5.3 for php cli
我正在使用macintosh OS X Mavericks
问题: 如何修复Phing权限? 我应该让www-data成员拥有root权限,如果是,如何?
更新1
我在下面设置了构建目标(由gafreax建议),但它仍然失败:
[phing] FileSystem :: chown()FAILED。无法chown /Users/nomad/Projects/BuildingWithPhing/logs/application.log。用户www-data。
<target name="permissions">
<echo msg="Set up permissions..." />
<exec command="cd ../" dir="${project.basedir}"/>
<exec command="chown -vR developer:www-data ./" />
<exec command="find -type d -exec chmod 775 {} +" />
<exec command="find -type f -exec chmod 664 {} +" />
</target>
更新2
我尝试编辑sudoers文件(由gafreax建议),但它不断给出语法错误,并且它是修复的任务。
如果您破坏了sudoers文件 - 将其替换为备份并运行“磁盘工具”中的“修复权限”。这让你重回正轨。
所以我仍然被卡住了。
答案 0 :(得分:0)
快速而肮脏的解决方案:与您的用户一起
chgrp -R www-data /Users/nomad/Projects/BuildingWithPhing/logs
chmod g+rw /Users/nomad/Projects/BuildingWithPhing/logs
您应该为www-data用户提供chown的功能。所以编辑/ etc / sudoers并添加这一行
Runas_Alias APACHE_USERS= www-data
www-data ALL = (APACHE_USERS): /bin/chmod, /bin/chown
最好是与开发者用户一起运行phing,然后运行到此(也在phing任务中)
cd /Users/nomad/Projects/
chown -vR developer:www-data ./
find -type d -exec chmod 775 {} +
find -type f -exec chmod 664 {} +