php部署到nginx时遇到的问题
2022-06-14 11:34 猎手家园 阅读(765) 评论(0) 编辑 收藏 举报1、权限问题
nginx用户、php用户最好不要用默认的:nobody,因为权限不够。
可以创建新的用户和用户组:
groupadd www
useradd -r -g www www
然后修改:nginx.conf
user www
修改:php-fpm.d/www.conf
[www] user = www group = www
同时给访问文件夹的权限给:www
chown -R www:www 文件夹
2、Nginx报403 forbidden错误 (13: Permission denied)
nginx没有web目录的操作权限,会出现403错误。
解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决
chmod -R 755 /usr/local/www
3、nginx遇到is not within the allowed path(s)
总结:发现不是目录下的.user.ini文件的问题,也不是php.ini的配置问题,而是fastcgi.conf的配置问题。
问题原因:open_basedir是默认的动态访问目录,/home/wwwroot/myproject/public,从而php无法读取其他目录。
解决办法:在 /usr/local/nginx/conf/ 目录在找到 fastcgi.conf,关于 open_basedir 默认的配置应该是:
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; #修改成: fastcgi_param PHP_ADMIN_VALUE "open_basedir=/usr/local/wwwroot/myproject/:/tmp/:/proc/";
欢迎关注我的公众号:云栖语,不一样的研发视界。
云栖语微信公众号:change-1978