Domain

使用 Blogger 託管部落格的路徑中的文件夾設置自定義域

  • March 6, 2018

Google Blogger 可以輕鬆地將部落格放在自定義頂級域或自定義子域中,例如:

www.example.com
blog.example.com

該設置涉及創建一個 CNAME 指向:

ghs.google.com

您如何將部落格設置為在 URL 路徑中具有文件夾名稱的自定義域上?

範例部落格首頁:

www.example.com/blog

CNAME 不起作用,因為那是在 DNS 級別而不是 HTTP 級別。重定向將更改使用者瀏覽器中的 URL,因此也不會這樣做。

有沒有一種簡單的方法可以做到這一點?(注意:我的註冊商是 Namecheap,我的網站在 Umbra Hosting 的 unix 伺服器上執行帶有 cPanel 的 Apache/2.2.16。)

可悲的是,答案似乎是否定的。

部落客設置 部落客設置

看起來沒有辦法*“將部落格設置為在 URL 路徑中具有文件夾名稱的自定義域上”*,例如:

www.example.com/blog

這裡有兩種方法。

方法#1:使用“元”標籤

您可以在www.example.comindex.html的頂部粘貼一個重定向到www.example.com/blog的文件。該文件將使用標籤中可用的“元”標籤:index.html``<head>

例如

<html>
<head>
 <meta http-equiv="refresh" content="0;url=http://www.example.com/blog/">
 <title>www.example.com blog</title>
</head>

<body>
....
</body>
</html>

你可以在這裡閱讀更多關於它們的資訊。

**注意:**此方法要求您只希望 www.example.com/index.html 重定向到 www.example.com/blog/

方法 #2:使用 Apache 重寫

#-- blog.example.com --#
<VirtualHost *:80>
 UseCanonicalName Off
 RewriteEngine On

 ServerName blog.example.com

 # blog 
 RewriteRule ^/(.*)$ http://www.example.com/blog/$1 [L,R=301]
</VirtualHost>

方法 #3:使用 Apache 反向代理

如果您試圖通過 URL http://www.example.com/blog/>獲取流量,但您的實際部落格位於<http://mysuperblog.blogger.com/,那麼另一種選擇是反向代理mysuperblog.blogger.com 位於一個 Apache 實例後面,任務是坐在前面。

#-- www.example.com/blog --#
&lt;VirtualHost *:80&gt;
 UseCanonicalName Off
 RewriteEngine On

 ServerName www.example.com

 # /blog -&gt; /blog/
 RewriteRule ^/blog$ /blog/ [R]

 # blog
 ProxyPass /blog http://mysuperblog.blogger.com
 ProxyPassReverse /blog http://mysuperblog.blogger.com
&lt;/VirtualHost&gt;

**注意:**為了使用 Apache 的反向代理功能,請確保啟用 mod_proxy 模組。

引用自:https://serverfault.com/questions/499127