如何將 sub.domain.com 重定向到 www.domain.com/dir/page.html?
我有一個舊的數據伺服器(data.example.com),它被 NAS 取代,NAS 共享現在安裝在網路伺服器(www.example.com)上。
所以現在舊伺服器已被刪除,我在我們的 DNS 上創建了一個“CNAME”以指向我們的網路伺服器,並且由於我們的路徑在舊數據伺服器和網路伺服器上是相同的,因此頁面被正確連結,即。“data.example.com/datafolder1 應該重定向到”www.example.com/datafolder1”。
但是我怎樣才能讓 data.example.com 重定向到www.example.com/dir/page.html,其中包含舊伺服器已被刪除並連結到實際數據文件夾的資訊?
以下是有問題的配置:
Bind9:example.hosts
data.example.com. IN CNAME www.example.com.
<VirtualHost *:80> ServerName data.example.com # 301 --- data.example.com => www.example.com/Info/dataserver.html RewriteRule ^data\.example\.com$ /www.example.com/Info/dataserver.html? [L,R=301] LogLevel warn rewrite:trace3 ErrorLog /var/log/apache2/error-data.example.com.log CustomLog /var/log/apache2/access-data.example.com.log combined </VirtualHost> <VirtualHost serverip:80> ServerName www.example.com ServerAlias example.com ServerAdmin webmaster@example.com # Redirecting all http > https Redirect permanent / https://www.example.com/ LogLevel error rewrite:trace3 ErrorLog /var/log/apache2/error-example.com.log CustomLog /var/log/apache2/access-example.com.log combined </VirtualHost> <VirtualHost *:443> ServerName www.example.com ServerAlias example.com DocumentRoot /var/www/www.example.com/htdocs/ SSLEngine on etc........
使用目前配置 data.example.com 正在重定向到www.example.com首頁,而不是我希望的**www.example.com/dir/page.html 。**
<VirtualHost *:80> ServerName data.example.com # 301 --- data.example.com => www.example.com/Info/dataserver.html RewriteRule ^data\.example\.com$ /www.example.com/Info/dataserver.html? [L,R=301]
據推測,此重定向是您“嘗試”重定向
http://data.example.com/
到http://www.example.com/dir/page.html
- 根據您的問題文本(儘管這應該是https://
)。這個重定向實際上做的是重定向
http://data.example.com/data.example.com
到http://data.example.com/www.example.com/Info/dataserver.html
- 可能不是你的意圖。
http://data.example.com/
要將(僅文件根目錄)重定向到https://www.example.com/dir/page.html
您應該將上面RewriteRule
的內容更改為以下內容(此處不需要 mod_rewrite):RedirectMatch 301 ^/$ https://www.example.com/dir/page.html
要重定向
http://data.example.com/<anything>
,然後將上面的內容更改為:RedirectMatch 301 ^ https://www.example.com/dir/page.html
您需要重新啟動網路伺服器才能使更改生效。