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

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

我正在使用ApacheWebServer,它的所有者设置为_www:_www..我永远不知道文件权限的最佳实践是什么,例如,当我创建新的Laravel 5项目时。

Laravel 5需要/storage文件夹可写。我找到了很多不同的方法来使它起作用,我通常以使它成为结果而结束。777慢性反复发作。我知道这不是最好的主意。

官方医生说:

Laravel可能需要配置一些权限:storagevendor需要Web服务器的写访问权限。

这是否意味着web服务器需要访问storagevendor文件夹本身也是,还是仅仅是它们当前的内容?

我认为更好的是改变业主而不是权限。我递归地将Laravel的所有文件权限更改为_www:_www这使站点正常工作,就好像我将chmod更改为777..问题是,现在我的文本编辑器每次想要保存任何文件时都要求我输入密码,如果我试图更改Finder中的任何内容,比如复制一个文件,也会出现同样的情况。

解决这些问题的正确方法是什么?

  1. 变化

    chmod

  2. 更改文件的所有者以匹配Web服务器的文件,并可能设置文本编辑器(以及Finder?)跳过询问密码,或让它们使用

    sudo

  3. 更改Web服务器的所有者以匹配os用户(我不知道结果)
  4. 其他的东西


潇潇雨雨
浏览 1264回答 3
3回答

眼眸繁星

控件的权限。storage和vendor文件夹应停留在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注:最常见的情况是,groupName是www-data但在你的情况下,用_www
打开App,查看更多内容
随时随地看视频慕课网APP