php中以777权限保存文件

php中以777权限保存文件,第1张

1. 网站的文件所有者帐号是什么?

2. apache/php-fpm以什么帐号身份运行?

3. 网站哪些目录需要有写入权限(如日志生成、附件上传等)

针对这个问题,建议的设置如下:

1. 网站所有者,可设置为ftp, www帐号

2. nginx/php-fpm/apache,建议以nobody帐号运行,反正不能使用网站文件所有者帐号。

3. 需要可写权限的目录,手工设置权限为777即可

4. php生成的日志、附件文件的所有者会是nobody, 这时www,ftp帐号却无法修改、删除这些文件。那么在php生成文件时,可调用chmod($filename, 0777)。即解钤还需系钤人。

这样,php脚本只能向指定的目录中写入文件,一方面规范了程序代码的行为,另一方面,也一定程度上提高了网站的安装性

请强制重启nginx服务,service nginx stop &&service nginx start

然后一般有这个错误:

"/var/lib/nginx/tmp/client_body/0000000002" failed (13: Permission denied)

chmod -R 777 /var/lib/nginx

OK

有时候当Nginx读取本地目录时会收到403错误,权限问题。

先来了解一下Nginx的用户管理,Nginx在以Linux service脚本启动时,通过start-stop-domain启动,会以root权限运行daemon进程。

然后daemon进程读取/etc/nginx/nginx.conf文件中的user配置选项,默认这里的user=nginx

也就是用nginx用户启动worker process。403错误就是因为nginx用户没有权限访问我当前开发用的用户目录,/home/dean/work/resources。

解决方法是将user=nginx替换成root,然后重新启动nginx,可以了。

其他方法也试过,比如给/home/dean/work/resources目录设置777权限,比如将nginx用户加入root组,都不行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11974623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存