0

我有一个使用的 YII webapp 项目svn checkout repo。当我尝试在我的 NGINX 服务器上运行这个 webapp 时,它(project1)给了我一个错误 -

Application runtime path "~/workspace/project1/protected/runtime" is not valid. Please make sure it is a directory writable by the Web server process.

但是当我创建其他一些 YII 项目(project2)时,比如 -

yiic webapp ~/workspace/project2
#and then the MVC procedure
./protected/yiic shell
>>model User users
>>crud User

我可以在浏览器中运行我的 webapp。

是不是因为没有配置project1?我必须手动对我的配置进行什么配置working copy

4

2 回答 2

3

您必须为 nginx 用户授予对运行时文件夹的写入权限。

Yii 在运行时使用这个文件夹来存储临时文件,来自指南

WebRoot/protected/runtime:此目录保存应用程序运行期间生成的私有临时文件。此目录必须可由 Web 服务器进程写入。

因此,yii 在CApplicationsetRuntimePath()中进行了此项检查:

if(($runtimePath=realpath($path))===false || !is_dir($runtimePath) || !is_writable($runtimePath))
于 2012-10-15T09:01:59.923 回答
2

您还可以使用该yiic webapp命令在签出项目中设置权限,假设您yii/framework与开发项目具有相同的相对路径。

svn checkout http://domain.tld/myproject myproject
cd myproject
protected/yiic webapp .

只要确保不覆盖现有文件即可。

于 2012-10-15T09:53:36.760 回答