除了主页/登录页面之外,使用.htaccess删除尾部斜杠

时间:2010-11-12 17:46:41

标签: .htaccess

我已成功修改我的.htaccess文件以删除大多数页面上的尾部斜杠,但我想知道如何免除我的主页/目录?例如:

domain.com/test/已成功重定向到domain.com/test

但是,当我点击我的域名时,它会附加根文件

domain.com/重定向到domain.com/index.php

我是否可以添加一个条件来忽略root url尾部斜杠,以便它不会尝试删除尾部斜杠并添加我的默认脚本?这是我到目前为止所做的:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$  /$1 [R=301,L]

3 个答案:

答案 0 :(得分:29)

行。经过一系列的反复试验,我回答了自己的问题。

第三行表示URI中必须有一些内容才能执行重定向,因此如果url只包含初始斜杠,则不会重定向。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} (.*)$
RewriteRule ^(.+)/$ http://www.domain.com/$1 [R=301,L]

答案 1 :(得分:17)

重定向对以/结尾但以root:

结尾的所有网址的请求
RedirectMatch 301 ^(.+)/$ $1

答案 2 :(得分:9)

怎么样

RewriteEngine On
RewriteRule ^(.*)/$ http://%{HTTP_HOST}/$1 
相关问题