发扬新手不懂就问的精神,再问个URL问题!
如下:www.XXX.com/index.php/A_control/B
这个连接是控制器A中的B函数!
可是,我想把域名改成
www.XXX.com/index/A_control/B
可以吗?
也就是index.php把.php这个后辍去掉?
应该怎么办?
请各位高高解答下,谢谢!~ index.php 去掉 .php ?这应该可以,就是一个 URL Rewrite 规则而已,不过我没这么做过。
一般就是去掉 index.php 而已。 嗯,明解了! 摆渡一下 那应该怎么样把index.php去掉呢?我也知是用url重写。建一个.htaccess文件进行匹配,可是
http://www.XXX.com/index.php/A_control/B
去掉了后就应该变成:http://www.XXX.com/A_control/B
这样就链接不了了。怎么解决呢?
还有一个问题就是:
当输入网址http://www.XXX.com/index.php/ (注意index.php后多一条 / )
就会弹出错误!为什么?这个问题又如何解决?
会弹出这样的错误:
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 0
Filename: libraries/Router.php
Line Number: 201
请各位高高解决下,谢谢! 第一个问题:如果 URL Rewrite 写对了,就不会出现链接不了的情况,请贴出你的 rewrite 规则。
第二个问题,只输入斜杠,本身就是错误的,楼主应该在控制器的方法中加上参数默认值。 Hex大哥,我真的搞郁闷了。你帮我看看。之前在phpchina那边你也回答过我这问题,可是到现在都没解决,你说域名中index.php文件去不去除得掉都没所谓。我并不是执意想去掉,可是,这问题解决不了,我心里也不舒服,我看了一天,就没搞出问题在哪。问了人家服务员,他们也说他们的空间开了mod_rewrite的,说什么基于PW和DZ的。你看我的文件如图片一样:
http://hiphotos.baidu.com/csfm4614/abpic/item/a1adc7ac19937e204a36d665.jpg
.htaccess的写法是这样的:
RewriteEngine on
RewriteCond $1 !^(index.php|styles|system|phpmyadmin|fckeditor|images|css|flash1.swf|flash2.swf)
RewriteRule ^(.*)$ /index.php/$1
然后在config/config.php设置里也设了
$config['index_page'] = "";
原来没设置config/config.php文件时,连接是正常的。可是设了后,再点连接就不行了。
还有之前你说说过,
解决
www.XXX.com/index.php/出错的办法是在控制器里加默认参数!。这个我不是很懂,可否举个例子。
这些问题我把手册都翻了好几次了,就是不知怎么解决! 还有,我看了我朋友写的一个CMS,也是CI写的。
他的控制器里也没你说的什么默认参数,那为什么他的没出错?
我甚至照着他写,我还是出错!能检查的地方都检查了! 好多问题,我也无法帮你解答,因为服务器环境不同,我所写的去掉 index.php 的文章,是在我的环境下可行的。
关于 index.php/ 这种,不要输入这种 URL 就可以了。这不排除 CI BUG 的可能性。
PS: 你的图片看不到。为什么不行?你也没说到底出现了什么错误?是 404 错误?那要看是什么 404 错误。
页:
[1]