解决CodeIgniter伪静态失效
原来地址:http://127.0.0.1/onsite/index.php/welcome/index/abc123
修改后地址:http://127.0.0.1/onsite/abc123.html
<IfModulemod_rewrite.c> RewriteEngineon RewriteBase/onsite RewriteCond%{REQUEST_URI}^system.* RewriteRule^(.*)$/index.php?/$1[L] RewriteCond%{REQUEST_URI}^application.* RewriteRule^(.*)$/index.php?/$1[L] RewriteCond%{REQUEST_FILENAME}!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule^(.*)\.html$index.php/welcome/index/$1[L] </IfModule>
规则是没有错的,但万想不到CodeIgniter竟然报404找不到页面;经过测试在根目录建立同名的html文件是能够正常显示的;
那问题应该是CI的配置导致的;经过一番波折,发现一个参数:
$config['uri_protocol']='AUTO';
把它改成:
$config['uri_protocol']='PATH_INFO';
页面终于显示正常了;