”Thinkphp5+PHP7中 Public 下的 index.php 首页打开出现 500“解决办法

服务器环境:LNMP

PHP:7.1

linux:centos

mysql:5.5

 

需要说明的是,环境配置成功后,网站已经可以访问了,由于我的根目录直接指定到public的,因此,public下的其它txt文件,ico图标都可以访问,我也新建了一个phpinfo.php文件,同样也可以访问。只有访问index.php的时候才出现“http error 500";

 

500:服务器内部错误,原因也很多!

 

一、首先我先检查环境

php和nginx都是启动正常,而且php和nginx日志都没有报任何的错误;从而说明不是php和nginx的原因;

 

二、重新修改nginx.conf根目录位置:

记住,这里修改时,一定不要把根目录定到public下,因为有时候直接定到public也有一些问题,具体为什么我也不知道;经验吧!

  1.   server
  2.   {
  3.        listen 80 default_server;
  4.       #listen [::]:80 default_server ipv6only=on;
  5.       server_name _;
  6.       index index.html index.htm index.php;
  7.       root  /home/wwwroot/www.webtuzi.com;
  8.       ......

 

注意:一定要重启nginx;

 

三、php.ini 开启错误调试

由于我的日志不报任何错误,而且打开index.php也不报任何错误,只报500,这怎么能行?不知道错误又如何解决问题呢?

 

打开php.ini,在合适位置添加“display_errors:On”

  1. display_errors:On 
  2. ; display_errors
  3. ; Default Value: On
  4. ; Development Value: On
  5. ; Production Value: Off

 

注意:一定要重启php,php.ini配置才会生效。

 

三、再次访问index.php出现:
“scandir() has been disabled for security reasons”;

 

scandir() has been disabled for security reasons

 

解决“scandir() has been disabled for security reasons”方法:

出现这个问题,那是因为php禁用了scandir()这个函数,我们只需要不禁用它即可。

 

可以通过查看phpinfo(),确认scandir()函数是否被禁用?下图则是禁用状态:

禁用scandir()

 

1、打开php.ini,一般默认位置是在/usr/local/php/etc/php.ini

 

2、找到“disable_functions”,并删除后面的“scandir”;

scandir

 

3、保存并退出,重启php-fpm即可!

 

五、再次去访问“http://www.webtuzi.com/public/index.php”已经成功!

 

ThinkPHP V5 十年磨一剑 - 为API开发设计的高性能框架

 

六、再重新把根目录定到public下看看如何?

  1.   server
  2.   {
  3.        listen 80 default_server;
  4. #listen [::]:80 default_server ipv6only=on;
  5.       server_name _;
  6. index index.html index.htm index.php;
  7.       root  /home/wwwroot/www.webtuzi.com/public;
  8.       ......

我们重启nginx后,再去访问网站,发现又出现了“500”错误。看来是不能直接定到public下面了。

如果这一步你可以成功,那就恭喜你了!

 

有很多人会问:为什么我就可以直接定到public上,你就不行呢?

具体为什么,我是真不知道。但是我相信还是有很多人不能直接把根目录定到public上吧。我多多少少还是遇到到这样的事情的!这不,今天又让我遇到到了这种情况吗?

付杰
  • ¥ 98.0元
  • 市场价:298.0元
  • ¥ 298.0元
  • 市场价:398.0元
  • ¥ 199.0元
  • 市场价:299.0元
  • ¥ 99.0元
  • 市场价:99.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: