php5.6报错No input file specified.的解决方法

报错原因:

No input file specified.”,是没有得到有效的文件路径造成的。

解决方法一:

检查根目录(或者thinkphp的public目录)下是否有一个.user.ini文件,有则删掉,或注释里面的内容,如下图:

然后重启Apache服务器, 刷新页面,如果还是报错No input file specified.,请参考方法二。

解决方法二:

PHP5.6是fast_cgi模式,而在某些情况下,不能正确识别path_info,从而造成错误,默认的.htaccess里面的规则:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

我们只需要修改.htaccess里的伪静态规则,如下:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
</IfModule>

仅仅就是在正则结果“/$1”前面多加了一个“?”号,刷新页面,如果还不能解决,请参考方法三。

解决方法三:

在php.ini文件里面修改:

fastcgi.impersonate = 1   //把前面的;去掉,启用

下面这两个可以解开注释,也可以不用(看个人需要)

cgi.fix_pathinfo=1
cgi.force_redirect = 0

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值