日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Apache 2.2 虚拟主机配置(本人推荐的)

發布時間:2025/5/22 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apache 2.2 虚拟主机配置(本人推荐的) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.域名問題

??????? 假設我們有兩個域名:www.aaa.com和www.bbb.com

??????? 為了方便測試,我們可以通過系統下的hosts文件,設定解析這兩個域名時對應的ip,在xp系統盤的 windows\system32\drivers\etc 下,找到hosts文件, 在其中添加兩條

??????? 127.0.0.1 www.aaa.com
??????? 127.0.0.1 www.bbb.com

??????? 即,都將域名指向本機。

??????? 了解更多hosts文件詳細見:hosts。

2.需要配置的文件

??????? 需要配置兩個文件,即httpd.conf和httpd-vhosts.conf
??????? httpd.conf在apache服務器文件夾的conf里面
??????? httpd-vhosts.conf在conf文件夾的extra里面

??????? 多說兩句,httpd.conf是apache的主配置文件,包含apache一些基本的設置,而httpd-vhosts.conf主要是配置虛擬主機的配置文件,這個體現了apache配置文件的模塊化思想,一些常用的配置都進行了模塊化,進行配置和修改時就會很方便。

3.步驟

3.1 修改httpd.conf文件

(1)把#Include conf/extra/httpd-vhosts.conf前面的#去掉,意思是讓httpd.conf文件包含httpd-vhosts.conf這個配置文件,這是apache的配置模塊化的一個表現,上面說過了。

(2)將 ServerName *:80 注釋掉,即前面添加 # 。ServerName需要在httpd-vhosts.conf文件中配置,每個虛擬主機對應的ServerName都是不同的,ServerName通常設定為域名,當然也可以設置成其他,*表示通配本機所有域名。

(3)將 DocumentRoot "C:/webroot" 注釋掉,每個虛擬主機的DocumentRoot 都是不同的,需要在httpd-vhosts.conf配置,所以將主配置文件中的注釋掉。

(4)將 <Directory “C:/webroot"> 標簽 和 其 內部的選項都注釋掉,即

??????? #<Directory "C:/webroot">
?????????? # Options None
?????????? # AllowOverride None
?????????? # Order allow,deny
?????????? # Allow from all
??????? #</Directory>

??????? 每個虛擬主機對于訪問限制可以單獨配置,當然也是在httpd-vhosts.conf配置

??????? 上面注釋掉的,都是httpd.conf默認的ServerName、DocumentRoot和Directory屬性,因為每個虛擬主機都可以有自己的配置,故可將這些默認的注釋掉。

3.2 修改httpd-vhosts.conf文件

NameVirtualHost *:80

<VirtualHost *:80>
??? ServerAdmin webmaster@aaa.com
??? DocumentRoot "C:/webroot/aaa.com"
??? ServerName www.aaa.com
??? ServerAlias aaa.com *.aaa.com
??? ErrorLog "logs/dummy-host.aaa.com-error.log"
??? CustomLog "logs/dummy-host.aaa.com-access.log" common
??? <Directory "C:/webroot/aaa.com">
??????? Options None
??????? AllowOverride None
??????? Order allow,deny
??????? Allow from all
??? </Directory>
</VirtualHost>

<VirtualHost *:80>
??? ServerAdmin
webmaster@bbb.com
??? DocumentRoot "C:/webroot/bbb.com"
??? ServerName
www.bbb.com
??? ServerAlias bbb.com *.bbb.com
??? ErrorLog "logs/dummy-host2.bbb.com-error.log"
??? CustomLog "logs/dummy-host2.bbb.com-access.log" common
??? <Directory "C:/webroot/bbb.com">
??????? Options None
??????? AllowOverride None
??????? Order allow,deny
??????? Allow from all
??? </Directory>

??? Alias /vpath "c:/webroot/vpath"
??? <Directory "c:/webroot/vpath">
??????? Options None
??????? AllowOverride None
??????? Order allow,deny
??????? Allow from all
??? </Directory>
</VirtualHost>

值得注意的是,VirtualHost是有順序的,排在最前的VirtualHost是我們默認的網站域名。如果沒有注釋掉httpd.conf中的DocumentRoot和ServerName,那么第一個虛擬主機的這兩個配置都必須與httpd.conf中的一樣,包括端口。當然我這里建議注釋掉httpd.conf中的標簽。

ServerAdmin??????? 網站管理員郵箱,基本上可以隨便寫。
DocumentRoot????? 虛擬主機的根目錄,確保磁盤地址存在,否則apache重新加載配置文件時會報錯。
ServerName???????? 虛擬主機域名。
ServerAlias????????? 虛擬主機域名別稱,*表示通配。如*.aaa.com就可以代表bbs.aaa.com或news.aaa.com等。
ErrorLog?????????????? 虛擬主機錯誤日志,可以自己設定名稱,一般保存到apache主目錄logs文件夾下。
CustomLog????????? 虛擬主機訪問日志。

Directory?????????????設置虛擬主機主目錄的訪問限制屬性。
Alias?????? ?????????????設置虛擬路徑,如第二個虛擬主機可以通過bbb.com/vpath訪問到c:/webroot/vpath中的網頁。

3.3 配置完成保存后

??????? 重啟apache服務器,應該就可以了,如果有錯誤,可以查看一下apache的錯誤日志,注意DocumentRoot的路徑一定要真是存在,否則apache會報錯。


本人看了覺得很清晰明了,自己動手做了一邊很順利,就轉過來了,希望幫助大家學會怎么配apache的虛擬主機。

本文轉自:http://hi.baidu.com/mnsch/blog/item/c5e1a694ca8c4610d31b705e.html#lastcmt


總結

以上是生活随笔為你收集整理的Apache 2.2 虚拟主机配置(本人推荐的)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。