簡體   English   中英

如何將非www重定向到我的域中的www

[英]How to redirect non-www to www in my domain

我遇到一個問題,我只想將mydomain.com重定向到www.mydomain.com,但是我發現的解決方案使我的oder子域(例如admin.mydomain.com)重定向到www.admin.mydomain.com。 我有一個使用Apache的Ubuntu 14.04,並使用Laravel(PHP)。

我只希望當mydomain.com / ....到www.mydomain.com / ...時發生這種情況,但是當開頭有其他類似admin.mydomain.com的情況時不希望發生這種情況

我將找到的解決方案留在這里,但這有一個我剛剛解釋過的小問題。

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

這是我用來強制使用www的規則。

RewriteCond  %{HTTP_HOST} !^www\. [NC]
RewriteRule  ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

僅應將其放置在具有域頂級定義的VirtualHost的內部

ServerName exmaple.com

每個其他子域應具有自己的虛擬主機定義。

您可以指定要重定向的域:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
# Redirect anything except admin.yourdomain.com, admin1.yourdomain.com
RewriteCond %{HTTP_HOST} !^(admin|admin1)\.yourdomain\.com$ [NC]
# Redirect to www.yourdomain.com, without changing the URI
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [L,R=302]

對於多個子域,它將起作用

RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM