lnmp配置tp3项目小结

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的常量路径有写不能用,在入口文件重新定义就可以,陋见!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是配置LNMP的具体过程: 1. 安装Linux操作系统 如果你还没有安装Linux操作系统,可以选择CentOS或Ubuntu等流行的Linux发行版,然后按照官方文档进行安装。 2. 安装Nginx 在CentOS上,可以使用以下命令安装Nginx: ``` sudo yum install nginx ``` 在Ubuntu上,可以使用以下命令安装Nginx: ``` sudo apt-get install nginx ``` 安装完成后,可以使用以下命令启动Nginx服务: ``` sudo systemctl start nginx ``` 3. 安装MySQL 在CentOS上,可以使用以下命令安装MySQL: ``` sudo yum install mysql-server mysql ``` 在Ubuntu上,可以使用以下命令安装MySQL: ``` sudo apt-get install mysql-server mysql-client ``` 安装完成后,可以使用以下命令启动MySQL服务: ``` sudo systemctl start mysql ``` 4. 安装PHP及PHP扩展 在CentOS上,可以使用以下命令安装PHP及常用扩展: ``` sudo yum install php php-mysql php-fpm php-gd php-xml ``` 在Ubuntu上,可以使用以下命令安装PHP及常用扩展: ``` sudo apt-get install php php-mysql php-fpm php-gd php-xml ``` 安装完成后,可以使用以下命令启动PHP服务: ``` sudo systemctl start php-fpm ``` 5. 配置Nginx、MySQL和PHP Nginx、MySQL和PHP的配置文件都位于/etc目录下。你需要根据自己的需求进行配置,这里只给出一些常用的配置: - Nginx配置 Nginx的配置文件为/etc/nginx/nginx.conf,你可以根据自己的需求进行修改。以下是一个简单的Nginx配置文件示例: ``` user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; include /etc/nginx/conf.d/*.conf; } ``` - MySQL配置 MySQL的配置文件为/etc/my.cnf,你可以根据自己的需求进行修改。以下是一个简单的MySQL配置文件示例: ``` [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql symbolic-links=0 character-set-server=utf8mb4 collation-server=utf8mb4_general_ci ``` - PHP配置 PHP的配置文件为/etc/php.ini,你可以根据自己的需求进行修改。以下是一个简单的PHP配置文件示例: ``` date.timezone = Asia/Shanghai cgi.fix_pathinfo=0 ``` 配置完成后,你需要重启Nginx、MySQL和PHP服务,以使配置生效: ``` sudo systemctl restart nginx sudo systemctl restart mysql sudo systemctl restart php-fpm ``` 至此,LNMP环境的搭建和配置就完成了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值