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组,都不行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)