lnmp1.5一键安装包 访问thinkphp项目public目录下的index.php 提示500服务器错误问题

2018年6月17号 下午 安装了 lnmp1.5一键安装包


php版本是 7.1.18


mysql是5.5.60


swoole是4.0.0


redis是4.0版本


phpmyadmin 是4.4.15.6

 

tp5.1.16 运行正常  

 

目前在centos 7.3的虚拟机上成功安装了以上软件。

但是其中遇到了一大波坑,大部分都是由于lnmp1.5里面的nginx配置文件引起的问题。

导致了,使用tp5.1.16 做项目的时候出现以下问题,(我目前遇到的)。

1、

    问题描述:首先是框架入口文件无法加载tp的核心文件。

    问题现象:自己写的test.php能执行。但是导入tp框架的时候访问就是500错误。nginx日志也没错误提示。

    问题解决:然后折腾了一番,终于找到了原因,原来军哥的一键安装包1.5版本的nginx配置里面限制了php文件的包含权限。导致了入口文件无法向上层require。 PHP.ini文件里面也没有设置php文件能够“翻越”的目录范围。于是我暴力的添加了/home/www、这个目录,于是入口文件终于能够向外require了。

(这个错误的原因就是军哥的lnmp一键安装包默认限制了脚本禁止跨目录访问,设置一下允许就好了。可以改php.ini,或者修改改fastcgi.conf)

lnmp1.5一键安装包 访问thinkphp项目public目录下的index.php 提示500服务器错误问题_第1张图片

2、

     问题描述:tp项目文件无法上传。

    问题现象:原生的表单提交能够正常上传,$_FILES['thumb']是能到看到文件已经成功提交到服务器的。但是用框架的request()->file("thumb");却返回的是null。

    问题解决:在php.ini文件里面的open_basedir参数追加php上传临时目录(我自己定义的是/tmp/post_tmp_files为PHP文件上传的临时目录)。

 

=====================分割线==========================

放大招!放大招!放大招!

解决网站项目跨目录限制的终极解决方案,

运行命令:vi /usr/local/nginx/conf/fastcgi.conf

将最后的那行注释掉!见下图所示!在最前面加个#号

lnmp1.5一键安装包 访问thinkphp项目public目录下的index.php 提示500服务器错误问题_第2张图片

至此,大坑终于圆满解决。还有些小问题就不写了。今天是端午节。明天睡下懒觉。^_^

祝各位有缘看到此文章的朋友端午节快乐!

 

你可能感兴趣的:(服务器,后端)