apache配置多站點
通過把apache配置安裝為服務設置多站點
-
打開
wamp\bin\apache\Apache2.2.21\conf
文件夾,復制httpd.conf,重命名為 my.conf -
打開my.conf,修改並保存
Listen 8009 # 端口號 # ServerName localhost:8009 #服務器名# DocumentRoot "G:/WapStatic" #設置為網站根目錄的url" <Directory /> Options Indexes FollowSymLinks Includes #支持服務端包含 *.shtml文件支持# AllowOverride None Order allow,deny allow from all </Directory> <Directory "G:/WapStatic"> #設置網站根目錄的權限# Options Indexes FollowSymLinks Includes #支持服務端包含 *.shtml文件支持# AllowOverride all Order Allow,Deny Allow from all </Directory>
-
接下來安裝站點
運行 cmd 定位到apache安裝目錄下的bin文件夾(wamp\bin\apache\Apache2.2.21\bin
)
執行httpd.exe -k install -n “服務名” -f “配置文件的路徑”;
//安裝一個apache服務
可以用 httpd.exe /?查看各個選項的意思# 比如:(服務名和配置文件的路徑必須用雙引號括起來) httpd.exe -k install -n “longsun” -f “F:\Program Files\Apache Group\Apache2\conf\longsun.conf”
-
運行apache目錄下的
apacheMonitor.exe
查看當前的apache服務,啟動我們剛剛建的服務。 -
瀏覽器打開
http://www.localhost:8009
驗證站點是否正常
通過1個IP多端口的方式配置多站點
一個IP + 一個端口 映射一個站點
-
打開 conf/httpd.conf 配置文件,修改如下:
Listen 8012 #監聽新端口 Include conf/extra/httpd-vhosts.conf # ctrl+f 查找,去掉前面的#注釋,包含外部虛擬主機配置文件 #打開虛擬主機配置文件 ( conf/extra/ httpd-vhosts.conf ) , 在底部增加這樣一段配置信息 <VirtualHost *:8012> ServerAdmin webmaster@myweb.com DocumentRoot "d:/mysite/" #站點根目錄 ServerName localhost:8012 #站點主機名 域名+端口 唯一標識一個主機 #由於httpd.conf的全局配置比較嚴格,默認所有目錄不可訪問,所以要這個放寬訪問權限 <Directory /> Options FollowSymLinks AllowOverride all Order deny,allow Allow from all </Directory> </VirtualHost>
-
保存配置文件后,重啟apache,然后就可以預覽
http://localhost:8012/test.html
-
在命令行下,轉到 apache2/bin目錄 運行
httpd -S
可以分析虛擬主機配置文件是否正確。
通過修改host方式配置多站點
hosts文件位於 window\system32\drivers\etc下
-
修改本機的hosts文件,如下:
127.0.0.1 localhost 127.0.0.1 www.dede.com 127.0.0.1 www.phpcms.com
-
打開
httpd.conf
文件,分別去掉下面兩行文字前面的#號。#啟用apache的虛擬主機功能。 #LoadModule vhost_alias_module modules/mod_vhost_alias.so #包含虛擬主機配置。 #Include conf/extra/httpd-vhosts.conf
-
打開
extra/httpd-vhosts.conf
文件,加上自己的虛擬主機配置。# www.glife.com, www.myphp.com是在hosts文件中指定解析為本機ip的 <VirtualHost *:80> ServerAdmin stephenjj@126.com DocumentRoot "d:/pan/shopilex" #注意 目錄分隔符用斜杠/ ServerName www.glife.com </VirtualHost> <VirtualHost *:80> ServerAdmin stephenjj@126.com DocumentRoot "d:/web" ServerName www.myphp.com </VirtualHost>
-
重啟apache, 並訪問對應網址試試