小编Kev*_*ung的帖子

PHP-FPM + Laravel + Nginx + Ubuntu权限

我之前尝试过搜索这个问题,但似乎没有任何地方可以彻底解释,大多数情况下只有许多问题app/storage没有设置,所以webserver可以写文件,但我的问题似乎更大更基本,我希望有人可以彻底解释如何设置,最好不需要设置权限777.

所以我的堆栈是Ubuntu 14.04,PHP 5.6PHP-FPM,因为我使用nginx 1.4.6并且我使用Laravel 4.2作为框架,ow和另外一个我使用Git作为我的版本控制工具.那么,允许以下内容的必要步骤是什么?

  1. 设置初始项目,Git和Nginx:

    据我所知,Nginx设置www-data为默认使用用户名?这是否意味着我必须将我的用户分配kevin给该组www-data?当我初始化git时,使用composer创建项目,设置SSH公钥/私钥,我是否需要属于该组www-data或者我必须是sudo什么?在我的生产服务器中,我尝试使用sudo设置所有内容,以便更容易完成上述所有操作,但这是最佳做法吗?

  2. app/storage为webserver 制作可写:

    我认为这是Laravel的第二个也是最重要的,因为除非这个工作Laravel不会运行,我的知识是这个文件夹必须可以被webserver(nginx)写入,所以我需要设置这个sudo chown -R www-data:www-data app/storagesudo chmod -R 664 app/storage对吗?但不知怎的,这似乎并不是一直有效,因为在我的开发过程中有时它会告诉视图的缓存无法写入app/storage文件夹,所以最后我必须设置它777或者775如果我很幸运.

  3. 公共文件夹或我的资产的位置

    在这里我也有一些不一致的地方,我在最后设置它777以确保nginx可以访问我的所有文件.有时nginx会告诉我,我的资产文件夹中的某些图像似乎被禁止,如果我设置777或更改组www-data:www-data,它将只返回HTTP 200 ,我是否必须为我创建的每个图像更改权限或组Gimp,Photoshop,或者当我从平面设计师设计新图标时从Dropbox或我的电子邮件下载时?

  4. 上传文件

    所以在某个时间,人们将能够上传例如他们的个人资料图片,或者当我发布博客时我可以上传图片,这意味着在某些时候文件上传脚本会将文件从/tmp文件夹移动到我的public文件夹,它可能只需要写入一个子目录,public或者有时需要根据某个目录创建一个文件夹 …

php ubuntu nginx user-permissions laravel

6
推荐指数
1
解决办法
6552
查看次数

标签 统计

laravel ×1

nginx ×1

php ×1

ubuntu ×1

user-permissions ×1