关于 PHP 部署权限的问题

2020-02-29 15:14:52 +08:00
 chenqh

假如我有个一个 php 项目名叫 novel

部署路径是/www/wwwroot/novel, /www/wwwroot的用户是root

nginx 的 user 是www, 而且我这个 php 项目需要一些 shell 后台执行, 所以

我这个/www/wwwroot/novel 应该是什么权限 www 还是 root 呢?,如果是www 或者root

我应该怎么执行这个项目的 shell 呢? 还是直接设置成775?

2965 次点击
所在节点    PHP
5 条回复
hakono
2020-02-29 16:19:21 +08:00
nginx 权限改成 www,然后 /www/wwwroot 整个权限也改成 www
encro
2020-02-29 16:22:54 +08:00
按楼上的做,然后将调 shell 的部分,不要通过 web 执行,通过队列任务或者定时任务执行 crontab 就行了。
Sor
2020-03-01 09:51:26 +08:00
按楼上的做,注意定时任务或队列的运行身份也要以 www 运行。
chenqh
2020-03-01 11:16:38 +08:00
@hakono 但是我是用 BT 的呀,/www/wwwroot 默认是 root
hakono
2020-03-01 12:39:13 +08:00
@chenqh wwwroot 什么权限和你用不用 BT 有什么关系?就不能 BT 也用 www 用户执行? 或者再不济用 root 跑 BT,下载完成后自动执行一行命令,将 BT 的下载目录 chown 成 www。至少 rtorrent 可是做得到的。
当然你一定想轻松,nginx 用 root 跑,php 用 root 跑,或者直接 777 也没人拦你。风险和安全自己评估

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/648607

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX