1,514 瀏覽數

Linux – Virtual Host

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 網站名稱,都可以正確導向到正確的網址存放地方.

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

目前我的網站除了 http://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

設定檔在

ppny@benjr:$ sudo vi /etc/apache2/apache2.conf

2 個網友的想法 “Linux – Virtual Host

  1. 自動參照通知: Linode – Longview | Benjr.tw

  2. Apache2 VirtualHost

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

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

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

發表迴響