CodeIgniter为什么伪静态失效的解决办法及示例代码

分类:PHP_Python| 发布:佚名| 查看: | 发表时间:2014/9/23

原来地址:http://127.0.0.1/camnpr/onsite/index.php/welcome/index/abc123

修改后地址:http://127.0.0.1/camnpr/onsite/abc123.html

代码如下:
<IfModule mod_rewrite.c>
 RewriteEngine on
 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文件是能够正常显示的;@camnpr

那问题应该是CI的配置导致的;经过一番波折,发现一个参数:

代码如下:
$config['uri_protocol'] = 'AUTO';

把它改成:

代码如下:
$config['uri_protocol'] = 'PATH_INFO';

页面终于显示正常了;

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/php-python/1656.html