如何通過(guò)Apache在本地配置多個(gè)虛擬主機(jī)
如何使用 Apache 在本地配置出多個(gè)虛擬主機(jī)呢?而且使用不同的“域名”來(lái)訪問(wèn)本地不同的站點(diǎn)呢?
一般情況下,咱們都使用 localhost 來(lái)訪問(wèn)本機(jī)上的服務(wù)器,在我們的 C:/WINDOWS/system32/drivers/etc/hosts 文件中默認(rèn)有一個(gè):
127.0.0.1 localhost
當(dāng)我們?cè)跒g覽器地址欄鍵入:
http://localhost
的時(shí)候,會(huì)顯示出服務(wù)器根目錄中的許多文件夾(若你的根目錄不是只有一個(gè)站點(diǎn)的話),就像:
Index of / * BAK/ * B_Discuz/ * B_Supesite/ * B_UCenter/ * B_Uchome/ * B_Uchome_Bak/ * B_XSpace/ * DiscuZ_X1/ * Javascript/ * NewUch/ * PHP/ * UchUtf8/ * Zend Framework_1.10.8/ * Zendphpweb20/ * mycms/ * phpMyAdmin/ * userAdminManager/
現(xiàn)在我想通過(guò)一個(gè)自定義的“域名”來(lái)訪問(wèn)我的根目錄中的站點(diǎn),譬如:
1,根目錄中有一個(gè) phpMyAdmin/ 的文件夾(倒數(shù)第二個(gè)),它是一個(gè)網(wǎng)頁(yè)版的數(shù)據(jù)庫(kù)管理系統(tǒng)(肯定不會(huì)陌生的吧?。蚁胪ㄟ^(guò)訪問(wèn)一個(gè)簡(jiǎn)單的:
http://dbmanager
來(lái)進(jìn)入這個(gè)系統(tǒng)(而不用輸入 localhost,再點(diǎn)擊 phpMyAdmin/ 才進(jìn)入);
2,根目錄中有一個(gè) Zendphpweb20/ 的文件夾(倒數(shù)第三個(gè)),它只是一個(gè)本地應(yīng)用站點(diǎn),我想通過(guò)訪問(wèn):
http://phpweb20
來(lái)進(jìn)入這個(gè)本地站點(diǎn);
現(xiàn)在要干些什么呢?跟我來(lái)吧!看下面:
1> 修改系統(tǒng)的 hosts 文件:
打開(kāi)之前說(shuō)過(guò)的系統(tǒng)的 hosts 文件,來(lái)給我們的電腦添加兩個(gè)“假的”DNS 項(xiàng),加入代碼:
127.0.0.2 dbmanager
127.0.0.3 phpweb20
這樣,我們的瀏覽器就會(huì)將 dbmanager 主機(jī)名解析為 127.0.0.2,將 phpweb20 主機(jī)名解析為 127.0.0.3。
2> 修改 Apache 配置文件:
在我的本機(jī)內(nèi) Apache 的主配置文件在:
D:/usr/local/apache2/conf/httpd.conf
說(shuō)是修改 Apache 的配置文件,其實(shí)只是添加了一些內(nèi)容,因?yàn)椴幌胄薷?Apache 的主配置文件,所以我們最好在各個(gè)站點(diǎn)寫好自己的虛擬主機(jī)配置子文件,然后使用 Include 指令將其包含到 Apache 的主配置文件里。
其實(shí)在 Apache 的主配置文件的最下方有虛擬主機(jī)的配置示例,只不過(guò)都被注釋掉了:
# 基于名稱的虛擬主機(jī)示例: #<VirtualHost 127.0.0.2:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting1 # ServerName 127.0.0.2 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost> #<VirtualHost 127.0.0.3:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting2 # ServerName 127.0.0.3 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost> #<VirtualHost 127.0.0.4:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting3 # ServerName 127.0.0.4 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost>
在配置文件的最下方添加代碼:
# 包含 dbmanager 虛擬主機(jī)配置文件
Include D:/usr/webroot/phpMyAdmin/httpd.conf
# 包含 phpweb20 虛擬主機(jī)配置文件
Include D:/usr/webroot/Zendphpweb20/httpd.conf
(我的 localhost 的根目錄為 D:/usr/webroot/)
3> 創(chuàng)建各個(gè)虛擬主機(jī)的子配置文件:
創(chuàng)建 dbmanager 的配置文件:D:/usr/webroot/phpMyAdmin/httpd.conf
#dbmanager 虛擬主機(jī)設(shè)置
<VirtualHost 127.0.0.2:80>
ServerName dbmanager
DocumentRoot D:/usr/webroot/phpMyAdmin
<Directory D:/usr/webroot/phpMyAdmin>
AllowOverride All
Options All
</Directory>
</VirtualHost>
創(chuàng)建 phpweb20 的配置文件:D:/usr/webroot/Zendphpweb20/httpd.conf
#phpweb20 虛擬主機(jī)設(shè)置
<VirtualHost 127.0.0.3:80>
ServerName phpweb20
DocumentRoot D:/usr/webroot/Zendphpweb20/htdocs
<Directory D:/usr/webroot/Zendphpweb20/htdocs>
AllowOverride All
Options All
</Directory>
#修改 PHP 配置(可選)
php_value include_path .;D:/usr/webroot/Zendphpweb20/include;D:/usr/local/php5/PEAR
php_value magic_quotes_gpc off
php_value register_globals off
</VirtualHost>
各個(gè)虛擬主機(jī)的配置就看應(yīng)用站點(diǎn)的不同需要了,DocumentRoot 為其根目錄(php_value 是修改此站點(diǎn)的 PHP 運(yùn)行參數(shù),根據(jù)自己應(yīng)用的需要來(lái)寫,這樣就不必修改 PHP 主配置文件)。
4> 重啟 Apache 服務(wù):
這個(gè)就不多說(shuō)了。
完畢!好了,在瀏覽器地址欄輸入分別輸入:
http://dbmanager
http://phpweb20
我們的目的達(dá)到了!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Apache,wsgi,django 程序部署配置方法詳解
- 基于Linux搭建Apache網(wǎng)站服務(wù)配置詳解
- Windows下Apache+Tomcat7負(fù)載均衡配置方法詳解
- 詳解在Ubuntu上的Apache配置SSL(https證書)的正確姿勢(shì)
- 使用 Apache Web 服務(wù)器配置兩個(gè)或多個(gè)站點(diǎn)的方法
- Apache下ModSecurity的安裝啟用與配置
- CentOS 7中 Apache Web 服務(wù)器安裝配置教程
- 阿里云服務(wù)器apache配置SSL證書成功開(kāi)啟Https(記錄趟過(guò)的各種坑)
- win10 apache配置虛擬主機(jī)后localhost無(wú)法使用的解決方法
相關(guān)文章
30 個(gè)很棒的PHP開(kāi)源CMS內(nèi)容管理系統(tǒng)小結(jié)
本文匯集了30個(gè)優(yōu)秀的開(kāi)源CMS建站系統(tǒng),采用PHP開(kāi)發(fā)。以下列表不分先后順序2011-10-10
ob_start(),ob_start(''ob_gzhandler'')使用
ob_start(),ob_start(''ob_gzhandler'')使用...2006-12-12
PHP小技巧之JS和CSS優(yōu)化工具M(jìn)inify的使用方法
為減少HTTP請(qǐng)求,我們往往需要合并和壓縮多個(gè)JS和CSS文件,下面記錄下網(wǎng)上關(guān)于實(shí)現(xiàn)這個(gè)功能的PHP源碼以及開(kāi)源項(xiàng)目Minify的使用方法2014-05-05
用php實(shí)現(xiàn)像JSP,ASP里Application那樣的全局變量
用php實(shí)現(xiàn)像JSP,ASP里Application那樣的全局變量...2007-01-01

