#1 cgjp123
开启url_path_info后,URL路径就变成http://localhost/speedphp/index.php/main/show,中间多了个index.php,看起不安逸,就加了个.htaccess文件RewriteEngine on
RewriteBase /speedphp/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index\.html !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,L]
在访问时URL就可以使用http://localhost/speedphp/main/show,看起要舒服些
但是出现一个问题
在访问http://localhost/speedphp/的时候,出现路由错误
打印URL.发现解析成http://localhost/speedphp/index.php/
多了个'/'
所以路由错误
请问有什么好的解决办法啊
我自己是在speedPHP.php文件中构造执行路由之前加了一行判断,
if($_REQUEST[$GLOBALS['G_SP']["url_controller"]]==''){
$_REQUEST[$GLOBALS['G_SP']["url_controller"]] = $GLOBALS['G_SP']["default_controller"];
}
问题是解决了
请问下还有什么更好的办法没,比如在rewrite规则中如何写会避免这种问题,谢谢,请高手教一下
2010-09-30 15:08:15