發現了一些類似的問題,但我無法從答案中找出答案,或者他們沒有直接匹配我的需求。htaccess重定向到子域並保留字符串
我最近搬到我的網站的一部分,一個子域不同的服務器,因此曾經被認爲是在:http://mysite.com/clients
現在是使用http://clients.mysite.com
我所試圖實現這一目標是: RedirectMatch 301 https?://mysite.com/clients/^(.*)$ https://clients.mysite.com/$1
工作正常重定向人打http://mysite.com/clients
到新的子域,但我希望能夠保留字符串後/客戶端/
所以如果有人碰到例如http://mysite.com/clients/could_be_a_number_of_things.php
它重定向到http://clients.mysite.com/could_be_a_number_of_things.php
任何人都可以建議嗎?
的要求完全的.htaccess:
# -FrontPage-
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*
<Limit GET POST>
order deny,allow
deny from all
allow from all
</Limit>
<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>
#AuthName mysite.com
#AuthUserFile /home/inhost/public_html/_vti_pvt/service.pwd
#AuthGroupFile /home/inhost/public_html/_vti_pvt/service.grp
# BEGIN WordPress
Options +FollowSymLinks -MultiViews
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteCond %{HTTPS}s on(s)|
RewriteCond %{HTTP_HOST} ^(www\.)?mysite\.com$
RewriteRule ^clients/(.*)$ http%1://clients.mysite.com/$1 [L,NC,R=301]
</IfModule>
# END WordPress
它看起來像重定向很不錯,但我不是Apache配置專家。我剛剛看到'^(。*)$'在之前不會與任何主機名匹配。嘗試刪除carot^^,這意味着*字符串*的開始。也許它會正確匹配結尾的URL路徑。 –
試過,相同的結果:(我現在使用RedirectMatch 301^https?://inceptionhosting.com/clients/(。*)$ https://clients.inceptionhosting.com/$1 基於一個建議,但已 – user1190083