我正在使用codeigniter构建的项目。我犯的错误是我添加了" /"在许多链接(href)中的base_url()方法之后,我已经给出了项目文件,如下所示。
<? echo base_url();?>/about
所以URLS看起来像
http://myproject.com//about
取代
http://myproject.com/about
正因为如此,导致404错误。
现在的情况是网站已经准备就绪,但我只能更新项目的.htaccess文件来解决这个问题。
那么我可以在.htaccess文件中编写任何规则,以便将URL中的双斜杠视为单斜杠并打开特定页面吗?
有趣的是,它已经在某种程度上考虑双斜线作为单斜线并打开&#34;关于&#34;开发服务器上的页面。但是现在随着服务器的改变,我开始面对404问题了。
答案 0 :(得分:0)
您可以在DOCUMENT_ROOT/.htaccess
文件中将此规则用作非常第一规则,以删除多个//
:
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ /$1 [R=302,L,NE]
答案 1 :(得分:0)
实际上您已将基本网址设置为
$config['base_url'] = 'http://myproject.com/';
当你像这样使用它时
<? echo base_url();?>/about
它正在添加//所以您必须像这样更改您的网页
<? echo base_url();?>about
如果您无法更改路径,则可以将htaccess设置为
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ /$1 [R=302,L,NE]