thinkphp配置rewrite模式访问时不生效 出现No input file specified解决方法


使用thinkphp配置rewire模式的路径访问网站时,

直接复制官网的.htaccess文件的代码复制过去

1
2
3
4
5
6
<IfModule mod_rewrite.c>
     RewriteEngine  on
     RewriteCond %{REQUEST_FILENAME} !-d
     RewriteCond %{REQUEST_FILENAME} !-f
     RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

  

出现No input file specified 页面提示,

在apache配置文件httpd-conf捣腾了好一阵子,

都没有解决到,

1. 如果开启了虚拟目录,则虚拟目录中 AllowOverride也要改为 all

2.

如果php运行模式是FastCGI模式,

在此模式下以下重写规则不适用的

1
^(.*)$ index.php/$1 [QSA,PT,L]

  

应该改成

 
1
^(.*)$ index.php?s=$1 [QSA,PT,L]
. htaccess中的内容修改为
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L](与官网的不同)
</IfModule>
 
 
 

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: