为了账号安全,请及时绑定邮箱和手机立即绑定

如何设置Laravel 5(和其他文件)的文件权限

如何设置Laravel 5(和其他文件)的文件权限

PHP
潇潇雨雨 2019-06-26 15:11:22
如何设置Laravel 5(和其他文件)的文件权限我正在使用ApacheWebServer,它的所有者设置为_www:_www..我永远不知道文件权限的最佳实践是什么,例如,当我创建新的Laravel 5项目时。Laravel 5需要/storage文件夹可写。我找到了很多不同的方法来使它起作用,我通常以使它成为结果而结束。777慢性反复发作。我知道这不是最好的主意。官方医生说:Laravel可能需要配置一些权限:storage和vendor需要Web服务器的写访问权限。这是否意味着web服务器需要访问storage和vendor文件夹本身也是,还是仅仅是它们当前的内容?我认为更好的是改变业主而不是权限。我递归地将Laravel的所有文件权限更改为_www:_www这使站点正常工作,就好像我将chmod更改为777..问题是,现在我的文本编辑器每次想要保存任何文件时都要求我输入密码,如果我试图更改Finder中的任何内容,比如复制一个文件,也会出现同样的情况。解决这些问题的正确方法是什么?变化chmod更改文件的所有者以匹配Web服务器的文件,并可能设置文本编辑器(以及Finder?)跳过询问密码,或让它们使用sudo更改Web服务器的所有者以匹配os用户(我不知道结果)其他的东西
查看完整描述

3 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

控件的权限。storagevendor文件夹应停留在775出于明显的安全原因。

但是,您的计算机和服务器Apache都需要能够在这些文件夹中进行写入。例:当您运行以下命令时php artisan,您的计算机需要将日志文件写入storage.

您所需要做的就是将文件夹的所有权交给Apache:

sudo chown -R www-data:www-data /path/to/your/project/vendor
sudo chown -R www-data:www-data /path/to/your/project/storage

然后,您需要添加您的计算机(由它所引用的username)服务器Apache所属的组。就像这样:

sudo usermod -a -G www-data userName

注:最常见的情况是,groupNamewww-data但在你的情况下,用_www


查看完整回答
反对 回复 2019-06-26
  • 3 回答
  • 0 关注
  • 1263 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信