htaccess 规则将双斜线视为单斜线
htaccess rule to consider double slashes as single
我正在开发一个使用 codeigniter 构建的项目。我犯的错误是我在项目文件中给出的许多链接(href)中的 base_url() 方法之后添加了“/”,如下所示。
<? echo base_url();?>/about
所以 URLS 看起来像
http://myproject.com//about
代替
http://myproject.com/about
因此,它会导致 404 错误。
现在的情况是网站准备好了,但我只能更新项目的 .htaccess 文件来解决这个问题。
那么我可以在 .htaccess 文件中写入任何规则,使其将 URL 中的双斜杠视为单斜杠并打开特定页面吗?
有趣的是,它已经以某种方式将双斜线视为单斜线并在开发服务器上打开 "About" 页面。但是现在随着服务器的改变,我开始面临404问题。
您可以将此规则用作 DOCUMENT_ROOT/.htaccess
文件中的 第一个规则 以删除多个 //
:
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ / [R=302,L,NE]
实际上您已经将基数 url 设置为
$config['base_url'] = 'http://myproject.com/';
当你像这样使用它时
<? echo base_url();?>/about
它正在添加到 // 因此您必须像这样更改您的页面
<? echo base_url();?>about
如果您不能更改路径,则可以将 htaccess 设置为
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ / [R=302,L,NE]
我正在开发一个使用 codeigniter 构建的项目。我犯的错误是我在项目文件中给出的许多链接(href)中的 base_url() 方法之后添加了“/”,如下所示。
<? echo base_url();?>/about
所以 URLS 看起来像
http://myproject.com//about
代替
http://myproject.com/about
因此,它会导致 404 错误。
现在的情况是网站准备好了,但我只能更新项目的 .htaccess 文件来解决这个问题。
那么我可以在 .htaccess 文件中写入任何规则,使其将 URL 中的双斜杠视为单斜杠并打开特定页面吗?
有趣的是,它已经以某种方式将双斜线视为单斜线并在开发服务器上打开 "About" 页面。但是现在随着服务器的改变,我开始面临404问题。
您可以将此规则用作 DOCUMENT_ROOT/.htaccess
文件中的 第一个规则 以删除多个 //
:
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ / [R=302,L,NE]
实际上您已经将基数 url 设置为
$config['base_url'] = 'http://myproject.com/';
当你像这样使用它时
<? echo base_url();?>/about
它正在添加到 // 因此您必须像这样更改您的页面
<? echo base_url();?>about
如果您不能更改路径,则可以将 htaccess 设置为
RewriteEngine On
RewriteCond %{THE_REQUEST} //
RewriteRule ^(.+?)/?$ / [R=302,L,NE]