• php部署到nginx时遇到的问题


    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/";
  • 相关阅读:
    ASP.NET MVC5+ 路由特性
    老李分享:大数据,数据库,数据仓库之间是什么关系
    老李分享:DBA
    老李提问:开源家族你认识几个
    米尔格伦连锁信实验
    老李分享:六度分隔理论
    三者关系
    老李分享:JDK,JRE,JVM区别与联系
    Linux简介与厂商版本下
    Linux简介与厂商版本上
  • 原文地址:https://www.cnblogs.com/hunttown/p/16373952.html
Copyright © 2020-2023  润新知