Laravel:不允许写入/.../.config/psysh

时间:2017-09-28 11:15:36

标签: php laravel laravel-5

我已使用Laravel Installer在本地安装了Laravel应用。现在我想将应用程序上传到我的生产服务器,这是一个托管虚拟服务器,但它可以满足所有需要的requirements

我上传了该应用,并在.env文件中更改了APP_URLDB_*设置。当我通过ssh登录我的服务器时,进入app文件夹并尝试使用修补程序

php artisan tinker

我收到以下错误消息:

enter image description here

错误消息有意义,因为wp10***文件夹不包含.config文件夹。但是,我无权在与www文件夹相同的级别创建文件夹。是否可以将文件夹放在Laracast项目文件夹中?在我的例子中,这将是/is/htdocs/wp_10**/www/laracast/p1/.config/psysh。如果是这样,我如何告诉Laravel新的位置?

6 个答案:

答案 0 :(得分:6)

Tinker正在尝试创建.config文件夹,而不是按应用程序配置,它是针对用户存储的。

我认为您无法更改目录路径,但是创建目录并设置权限将允许您使用修补程序。

mkdir -p ~/.config/psysh chmod -R 755 ~/.config

在尝试此操作之前,请务必仔细检查用户权限,因为您应该始终能够直接写入用户主目录。

答案 1 :(得分:5)

如果您无权使用默认目录,则

您可以在.env文件中更改目录路径:

XDG_CONFIG_HOME=/home/some/directory

感谢bernhardh

答案 2 :(得分:0)

验证.configpsysh属于您的用户,尝试使用chown更改所有者并将权限设置为700

答案 3 :(得分:0)

或者您可以使用:

sudo chmod -R 755 ~/.config

然后创建目录:

mkdir -p ~/.config/psysh

和:

php artisan tinker

答案 4 :(得分:0)

试试这个

sudo chmod -R 777 ~/.config

如果目录不存在

mkdir -p ~/.config/psysh

然后再检查

php artisan tinker

答案 5 :(得分:0)

如果在 Windows 上使用 Laragon,您可以尝试转到 c 驱动器,然后单击您正在使用的用户文件夹,然后右键单击,然后属性转到安全性,然后单击编辑(所有/所有人)。然后选中所有复选框,以便您可以写入文件。how it looks here