這是我到目前爲止有:.htaccess force「www。」在一切,但子域和刪除尾隨斜線
#Force www.
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
#Remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} (.*)$
RewriteRule ^(.+)/$ http://www.domain.com/$1 [R=301,L]
然而,這打亂了所有子域執行以下操作重定向:
sub.domain.com -> www.sub.domain.com
而且也,其依賴於寫在刪除結尾斜槓位上的域。
所以......兩個問題。
如何在「刪除尾部斜線」位上重寫規則以排除在其上寫入域?
如何使rewritecond在「force www」排除子域,而不顯式寫下子域。位?預期的效果
例子 -
sub.domain.com/something/ -> sub.domain.com/something
domain.com/something/ -> www.domain.com/something
www.domain.com/ -> www.domain.com
sub.domain.com -> sub.domain.com
謝謝!
目前還不清楚你想要發生什麼。你能提供一組輸入和你想要它們轉換成什麼? – RoUS 2013-03-01 22:06:57
我加了一些例子! – 2013-03-01 22:30:40