用户
 找回密码
 入住 CI 中国社区
搜索
楼主: Hex
收起左侧

去掉 URL 中的 index.php

    [复制链接]
发表于 2010-7-28 14:12:41 | 显示全部楼层
$path = (isset($_SERVER['PATH_INFO'])) ? $_SERVER['PATH_INFO'] : @getenv('PATH_INFO');

$path =  (isset($_SERVER['QUERY_STRING'])) ? $_SERVER['QUERY_STRING'] : @getenv('QUERY_STRING');

$path = str_replace($_SERVER['SCRIPT_NAME'], '', (isset($_SERVER['ORIG_PATH_INFO'])) ? $_SERVER['ORIG_PATH_INFO'] : @getenv('ORIG_PATH_INFO'));

CI搞出这么多个 path 条件 来分发路由
他们3个分别是在什么情况下 false的?
发表于 2010-8-13 15:48:27 | 显示全部楼层
我的也去掉INDEX.PHP了,感觉清爽多了
发表于 2010-9-11 15:44:53 | 显示全部楼层
好贴啊。
发表于 2010-10-9 00:26:22 | 显示全部楼层
刚测试成功 可以
发表于 2010-10-30 17:08:58 | 显示全部楼层

  1. RewriteEngine on   
  2. RewriteCond $1 !^(index\.php|images|robots\.txt)   
  3. RewriteRule ^(.*)$ /index.php/$1 [L]
复制代码

为什么上面这些语句 在某些apache服务器 有效 而有些又出现很多问题 不是说不生效,同时rewite_mod 已经开启
发表于 2010-12-1 09:46:34 | 显示全部楼层
贴下,我的


deny from all

Options -Indexes
Options +FollowSymLinks
#允许解析文件中的SSI指令
Option ...
ouok 发表于 2009-9-19 12:26


非常感谢,成功!
发表于 2010-12-28 20:41:48 | 显示全部楼层
这个好,非常好
发表于 2011-2-11 02:51:57 | 显示全部楼层
按楼主的方法设置了,但发生了一个很奇怪的现象,那就是配置修改保存后的第一次访问可以正常重写,但若继续访问则一直被导到404页面。

后把  RewriteRule ^(.*)$ index.php/$1 [L] 的[L]部分去掉了,然后就可以了。

想知道去掉[L]会有什么影响吗?比如使服务器的性能下降什么的?
 楼主| 发表于 2011-2-11 11:19:36 | 显示全部楼层
回复 68# wumuphp


    如果 [L] 后没有其他规则了,有没有这个 [L] 无所谓。Apache 还不至于差到一个 [L] 就影响性能的地步,呵呵。
发表于 2011-3-16 16:35:16 | 显示全部楼层
总算弄好了,修改后要重启下

本版积分规则