这是一个小问题,但我真的很想知道发生了什么。我刚刚从静态HTML将我的网站转换为CI。作为一名优秀的网站管理员,在重新组织网站后,我尝试将Apache重定向放置在旧网址的适当位置。而不是使用URL重写(我永远不能理解正则表达式),我在网站.htaccess中使用了 Redirect Permanent 。
所以我尝试使用我当前的网站,例如:
Redirect permanent /callhull/about.html /callhull/about/
我希望将http://www.fredriley.org.uk/callhull/about.html重定向到http://www.fredriley.org.uk/callhull/about并且它有用,但浏览器的网址栏中显示的是:
http://www.fredriley.org.uk/callhull/about/?/about.html
这是来自域根www.fredriley.org.uk中的.htaccess文件,而不是CI网站根目录。 CI站点根目录中有一个复杂的.htaccess,我在CI论坛的某个地方刻画,其中包括:
RewriteBase /callhull/
RewriteRule ^(.*)$ /index.php?/$1 [L]
所以我得到一个干净的URL而不是index.php?无论如何。
请问有些灵魂请解释发生了什么,并且/或者指导我在CI网站上重定向网址的最佳做法?这对于小型站点来说只是一件小事,因此如果解决方案是使用复杂的重写规则或创建自定义类或其他功能,我会给它一个错过。