linux – NGinx和PHP应该运行的用户是什么?
发布时间:2020-12-13 17:59:55 所属栏目:Linux 来源:网络整理
导读:权限是我在 Linux上困惑了一段时间的事情.因此,在我的NGinx和 PHP-FPM实例与用户和组一起运行时: www-data 这是标准吗?当我遇到文件上传时遇到麻烦. 例如,文件将与用户和组www-data一起上传.现在,由于我在我的Web应用程序中设置权限(0440),我无法使用普通
权限是我在
Linux上困惑了一段时间的事情.因此,在我的NGinx和
PHP-FPM实例与用户和组一起运行时:
这是标准吗?当我遇到文件上传时遇到麻烦. 例如,文件将与用户和组www-data一起上传.现在,由于我在我的Web应用程序中设置权限(0440),我无法使用普通帐户通过ssh登录以下载这些文件.这不能改变. 我正在考虑更改我的nginx和php实例来保留组,但是将它们更改为在我的用户名下运行. 在这里处理权限的正确方法是什么?谢谢. 解决方法
这是如何工作的:
当您通过FTP / SSH登录并上传文件时,将使用您的权限创建它们. 可能你的webroot是世界可写的(0777),这是不安全的 – 系统中的每个用户都可以在那里写东西. PHP以不同的用户权限运行(它们在PHP-FPM配置中指定,而不是nginx配置),并且由于目录是全局可写的,PHP用户(www-data)也可以在那里写.但此文件的所有者是www-data,而不是您的帐户.它们是文件系统权限级别中的2个不同帐户. 我建议你创建具有最少权限的专用用户,这将拥有webroot目录,并将用于FTP / SSH上传,并将运行PHP. 不要使用特权(sudo功能,写权限外部docroot)用户运行PHP,这可能会导致服务器安全性受损. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |