linux系統下的apache2如何配置虛擬主機

1,起因

在一星期前吧,大波說已然我們有了自個的服務器,二級域名了。能夠思考如何每人一個域名,別離指向我們各自的空間。主意挺好,避免我們個人的東西放在同一主頁上。那就做吧

2,第一次嘗試

(1)在域名在萬網買的,他們有個服務是支持泛域名解析。選擇這個服務后,所有的三級域名 ?www.*.xin3e.com 都可以指向 ?www.xin3e.com的IP地址。

(2)按照這個鏈接的方法進行嘗試:http://hsst.blog.sohu.com/52046690.html

因為Ubuntu下,Apache2的配置文件及目錄結構不大一樣,所以mods-avalilable下的是可用的模塊。而真正啟用了的模塊是在mods-enable目錄底下的。自己創建軟連接實現啟用rewrite模塊。

sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load

(3)sudo vi /etc/apache2/sites-enabled/000-default

將其中所有的AllowOverride None 修改成 AllowOverride All.
備注:000-default實則為sites-available/default的鏈接,而AllowOverride None則會完全忽略.htaccess文件,rewrite規則就不能生效

(4)在httpd.conf文件末尾加上類似以下配置:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^[a-zA-Z0-9]+\.xin3e\.com$
RewriteRule ^$ /%{HTTP_HOST}
RewriteRule ^/([a-zA-Z0-9]+)\.xin3e\.com/?$ /web/zyb/index [R]

(5)重啟apache,沒有效果。

3,第二次嘗試

(1)刪除上一次第(4)步在httpd.conf文件的操作。  原apache2的httpd.conf文件是空的,現只保留ServerName localhost

(2)配置虛擬主機的目錄。

什么是虛擬主機(Virtual Host)。所謂的虛擬主機,基本上就是“讓你的一臺服務器上,有好多個‘主頁面’存在。也就是說,硬件實際上只有一臺主機,但由網址上來看,則視乎有好多臺主機存在的樣子”。舉個例子:

www.xin3e.com  ==>  IP/www/index.php

IP/www目錄下還有IP/www/zyb,IP/www/fb兩個目錄。那么:

www.zyb.xin3e.com  ==>  IP/www/zyb

www.fb.xin3e.com  ==>  IP/www/fb

兩個域名指向同一IP地址,進去則是不同的信息內容。這就是虛擬主機的主要功能,它可以讓你的多級域名對應不同的主網頁目錄(DocumentRoot 參數),所以看起來像有多臺實際主機的樣子。

    有1)基于IP地址的虛擬主機配置,2) 基于IP和多端口的虛擬主機配置,3)單個IP地址的服務器上基于域名的虛擬主機配置,4)在多個IP地址的服務器上配置基于域名的虛擬主機。今天只展示單個IP地址的服務器上基于域名的虛擬主機配置。

(3)修改配置文件  /etc/apache2/sites-available/default

添加:

<VirtualHost *:80>
        ServerName www.zyb.xin3e.com
        DocumentRoot /home/normal/website/zyb
        ServerAlias zyb.xin3e.com
        ErrorLog /var/log/apache2/error-zyb.xin3e.com.log
</VirtualHost>

Apache中涉及到的相關選項說明:

ServerName  (設定虛擬主機的名稱)

DocumentRoot  (指定虛擬主機的網站主目錄)

ServerAlias    (設定虛擬主機的別名)

ErrorLog    (虛擬主機發生錯誤時要記錄在哪個目錄,可不設)

(4)保存,重啟apache2

sudo /etc/init.d/apache2 restart

(5)測試,成功。

補白:這是大波一星期前給我提的想法,上星期嘗試失利后,一星期沒找到合適的時刻。今天給了個了解。本來虛擬主機裝備中通常都包括進行目錄的具體裝備,但我還不甚了解其效果和必要性。暫時未處理。

相關新聞

聯系我們

400-080-6560

在線咨詢:點擊這里給我發消息

郵件:[email protected]

工作時間:周一至周日,09:00-18:30

QR code
云南快乐10分开奖直播