Thinkphp 在php5.6以上版本显示 'No input file specified'

安装ThinkPHP5.0.7版本运行项目域名http://test.lo时提示安装ThinkPHP成功,但是运行http://test.lo/index/index时提示:

1
No input file specified

上网查了一下才知道,PHP5.6以上的是fast_cgi模式,而在某些情况下,不能正确识别path_info所造成的错误,这个时候,你只需要更改.htaccess文件,如下所示:

1
2
3
4
5
6
7
8
<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>

只需要在index.php后面添加?即可,如下所示:

1
2
3
4
5
6
7
8
<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>

再次运行http://test.lo/index/index成功了。

坚持原创技术分享,您的支持将鼓励我继续创作!