Linux – Virtual Host

Loading

RedHat / CentOS

當你的 web Server 只有一個 Public IP 時,有可能設置兩個不同網站嗎??如果你使用的是 Apache 當做你的網頁伺服器時答案是可以的.參考 Apach 官方文章 Running several name-based web sites on a single IP address 說明 http://httpd.apache.org/docs/2.2/vhosts/examples.html

這是以名稱為基礎的 name-based web sites 網站,首先第一步你需要將 DNS 的解析將不同的網域設定為同一組 IP ( multiple aliases 多個別名 CNAMES),使用者只要使用個別的 DNS 網站名稱,都可以正確導向到正確的網址存放地方.

設定方式請參考 https://benjr.tw/13311

目前我的網站除了 https://benjr.tw 還放了我朋友的網站 http://laimepro.com (已移除)

只要修改 /etc/httpd/conf/httpd.conf 下面的設定即可.

[root@benjr ~] # vi /etc/httpd/conf/httpd.conf 
# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
<VirtualHost *:80>
DocumentRoot /var/www/benjr
ServerName benjr.tw
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /var/www/laimepro
ServerName laimepro.com
</VirtualHost>

不過這樣的設定讓我用到另外一個問題,當我在 benjr.tw 或是 laimepro.com 前面加入 www.benjr.tw 或是 www.laimepro.com 會有解析上的問題,所以我多增加了 www.benjr.tw 以及 www.laimepro.com 的設定.

<VirtualHost *:80>
DocumentRoot /var/www/benjr
ServerName www.benjr.tw
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/laimepro
ServerName www.laimepro.com
</VirtualHost>

Ubuntu

設定一樣,不過 Apache 名稱卻不一樣

ppny@benjr:$ sudo apt-get install apache2

設定檔在 /etc/apache2/apache2.conf 或是 /etc/apache2/sites-available/000-default.conf 都可以做設定.

ppny@benjr:$ sudo vi /etc/apache2/apache2.conf
沒有解決問題,試試搜尋本站其他內容

5 thoughts on “Linux – Virtual Host

  1. 自動引用通知: CentOS 7 + wordpress – Benjr.tw
  2. 自動引用通知: Linode – Longview | Benjr.tw
  3. Apache2 VirtualHost

    在 Ubuntu 設定 VirtualHost 照著官方網站說明來設定 VirtualHost Examples

    沒想到卻出現 Index of ,把所有的目錄列出來.網頁資料也沒出現…

    查到最後才發現 /etc/hosts 的 IP 跟 Hosts 不對,立刻修改後就可以使用了.

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料