ili*_*arn 11 php amazon-ec2 composer-php
我有一个ec2图像,并在尝试创建一个新的laravel项目时收到以下错误.
[ErrorException] mkdir():权限被拒绝
这是命令:
composer create-project laravel/laravel mydir
Run Code Online (Sandbox Code Playgroud)
我可以使用ec2-user用户名写入该文件夹,但是我是否需要添加composer写入的权限?
Jen*_*och 16
添加"www"组并将您的用户添加到该组
sudo groupadd www
sudo usermod -a -G www ec2-user
Run Code Online (Sandbox Code Playgroud)注销/登录
设置所有权和写入权限
sudo chown -R root:www /var/www
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} +
find /var/www -type f -exec sudo chmod 0664 {} +
Run Code Online (Sandbox Code Playgroud)参考:http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html
Osc*_*car 15
快速回答:
出于安全原因,让我们root作为所有者保留,只允许自己在我们将要工作的区域内进行读取,写入和执行.
更改目录
cd /var/www/
更改群组所有权
sudo chown -Rv root:$USER .
为我们的小组添加特权
sudo chmod -Rv g+rw .
为了大结局,请继续创建您的新laravel项目
composer create-project laravel/laravel项目名--prefer-dist
恭喜,我们完成了.:)
深入解释
解决方案背后的解释:
默认情况下,您有两个用户; root和$USER(这是全局变量,但实际名称是您输入的用户名).创建的每个用户也都有一个组.因此,如果我的用户名是john,我有一个名为的组john.有很多方法可以解决这个问题,但是出于以下几个原因我更喜欢这条路线:
root出于安全原因,我仍然希望成为文件的所有者.
我在localhost工作,所以不应该有任何其他(访客)用户写我的文件.
为了实现这一点,我们需要编辑组所有权并添加适当的权限.我们将保持others原样,只允许它们读取和执行文件.
让我们开始吧:
我喜欢在我正在进行更改的目录中以避免错误,所以首先我们需要输入我们将要工作的目录.
cd /var/www/
我们需要更改我们将要使用的目录的组所有权.从我们所在的目录开始,以及我们将在此目录下创建的所有未来目录和文件.因此,从现在开始,基本上任何子目录都将由我们的团队拥有.
sudo chown -Rv root:$USER .
chown=命令CH安格自己的呃.
-R= Recursive - 这基本上是对该目录中的所有目录执行相同的命令.
-v=详细 - 我们在此通过向我们展示实际发生的情况来向我们通报.
root:$USER这是我们设置的所有权.冒号前面的第一个单词(:)表示root将是单个所有者.冒号(:)后面的第二个单词表示组所有者将是$USER(当前用户).
.=这只是意味着'在这里,在这个目录中'.
root成为主要所有者的地方,同时只允许自己创建变更(当然,除此之外root).正如我之前提到的,这不允许其他用户创建任何改变.
sudo chmod -Rv g+rw .
chmod=命令CH安格MOD ifications,在这种情况下,权限.
-Rv=递归和详细
g=这将说明谁将收到修改.在我们的例子中,g-group其他选项是u-user和o-other.
+=符号添加
r=象征着读
w=象征写
composer create-project laravel/laravelprojectName` --prefer-dist
注意:如果这不起作用,请ls -al | grep $USER在/var/www/目录中输入命令.
如果你得到这个:
drwxrw-r-x
您缺少x该组的executable()特权.第一个x是用户,最后一个x是其他人.x小组应该有中间人.
运行以下命令,您应该全部设置为:
sudo chmod -Rv g+x .
现在,如果你跑ls -al | grep $USER,你应该得到:
drwxrwxr-x
| 归档时间: |
|
| 查看次数: |
22558 次 |
| 最近记录: |