文件中的双斜杠和结束斜杠

时间:2016-08-30 17:01:28

标签: apache .htaccess mod-rewrite configuration

我正在使用

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com$1 [R=301,L]

此代码有助于删除双斜杠。但现在我还有一个问题,我一小时内无法解决..

如果它是一个“文件”,如何删除结束斜杠?

http://domain.com/           <-- good
http://domain.com/file.php/   <-- bad

是否可以将所有这些代码写在一行或更专业?我还在学习。

谢谢!

1 个答案:

答案 0 :(得分:1)

在RewriteEngine On行的正下方,添加:

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

强制执行无尾随斜杠政策。

强制实施斜杠政策:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]