gpt4 book ai didi

laravel - 使用 Laravel Artisan 和文件权限

转载 作者:行者123 更新时间:2023-12-05 08:20:53 28 4
gpt4 key购买 nike

我是 Laravel 的新手,我发现这个框架很棒。

Artisan 也很棒,但使用起来有点问题。

假设我像这样用 Artisan 创建了一个新的 Controller

php artisan make:controller Test

在app/Http/Controllers中会新建一个名为Test的文件,这个文件的权限为root:root

当我想用我的编辑器通过 ftp 编辑这个文件时,我做不到,因为我没有以 root 身份登录。

有什么方法可以告诉 Artisan 使用 www-data 组创建文件(例如,无需执行 chown 命令)?

最佳答案

由于您具有 root shell 访问权限,因此以下命令将使用 www-data 用户执行另一个命令-

sudo -u www-data php artisan make:controller Test

www-data 替换为您的 Web 服务器运行时使用的任何用户名,您登录 FTP 服务时使用的用户名。

当您这样做时, Controller 将由 www-data 拥有,这正是您想要的。

注意:不要永远运行从互联网上复制粘贴的命令,而不知道它们到底做了什么,尤其是在 root shell 中。在这种情况下,-u 参数告诉 sudo 以特定用户而不是 root 用户的身份执行命令。从联机帮助页:

-u user, --user=user
Run the command as a user other than the default target user (usually root ). The user may be
either a user name or a numeric user ID (UID) prefixed with the ‘#’ character (e.g. #0 for UID
0). When running commands as a UID, many shells require that the ‘#’ be escaped with a backslash
(‘\’). Some security policies may restrict UIDs to those listed in the password database. The
sudoers policy allows UIDs that are not in the password database as long as the targetpw option
is not set. Other security policies may not support this.

关于laravel - 使用 Laravel Artisan 和文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34434757/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com