lnmp配置tp3项目小结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29058883/article/details/84349158

listen  监听

先是路径:

刚开始配置了nginx.conf,不是400就是500,最好的方法是根目录下随便写的打印东西的,就可以知道路径对不对。

然后就是重写的错误:

下面是复制的,这个解决问题的思路很好。
在入口文件index.php中加入

error_reporting(E_ALL);
ini_set('display_errors', '1');

来打印所有错误信息

代码打印出


Warning: require(): open_basedir restriction in effect. File(/home/wwwroot/mz.kchangfu.cn/thinkphp/start.php) is not within the allowed path(s): (/home/wwwroot/mz.kchangfu.cn/public/:/tmp/:/proc/) in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22

Warning: require(/home/wwwroot/mz.kchangfu.cn/thinkphp/start.php): failed to open stream: Operation not permitted in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22

Fatal error: require(): Failed opening required '/home/wwwroot/mz.kchangfu.cn/public/../thinkphp/start.php' (include_path='.:/usr/local/php/lib/php') in /home/wwwroot/mz.kchangfu.cn/public/index.php on line 22

三、分析错误内容

  查看问题描述以及资料,发现是php open_basedir 配置的问题,php不能引入其授权目录上级及其以上的文件,默认配置在php.ini(/usr/local/php/etc/php.ini),但是我的open_basedir 并没有配置,默认被注释了。

#在php.ini
open_basedir =  //没有打开也是空的
#在.user.ini
open_basedir=/home/wwwroot/mz/public:/tmp/:/proc/
#在fastcgi.conf
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";

只需把 
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 
改成

`fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/wwwroot/:/tmp/:/proc/";`
成功的案例a.conf

server {
    listen       80;   #端口号
    server_name 47.94.227.248;  #主机名
    index  index.php index.html index.htm;
    root   /home/wwwroot/default/yjh/website;
    error_page  404              /404.html; # 错误页面
     include enable-php-pathinfo.conf;
     include rewrite/thinkphp.conf;

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
        expires      1d;
    }
    location ~ .*\.(js|css)?$ {
        expires      12h;
    }
    location  /ngx_status {
    stub_status on;
    access_log off;
    #allow 127.0.0.1;
    #deny all;
    }
    error_log  /usr/share/nginx/html/2018/1/qpl_8090error.log;
    access_log  /usr/share/nginx/html/2018/2/qpl_8090access.log;
}

配置完还有些tp的常量路径有写不能用,在入口文件重新定义就可以,陋见!!

猜你喜欢

转载自blog.csdn.net/qq_29058883/article/details/84349158
tp3
今日推荐