apache虛擬主機配置
ServerAdmin webmaster@example.com ——管理員郵箱(可以隨便寫一個)
DocumentRoot "/home/phpok-com" ——網(wǎng)站目錄
ServerName example.com —— 要綁定的域名
ServerAlias www.example.com ——要綁定的別名,如果有多個別名就用英文逗號隔開
CustomLog logs/example.com_custom_log——用戶日志格式(這一行也可以為空)
ErrorLog logs/example.com_error_log ——錯誤日志(也可以為空)
</VirtualHost>
步驟:
1.修改httpd.conf
把#Include conf/extra/httpd-vhosts.conf前面的#去掉,意思是讓httpd.conf文件包含httpd-vhosts.conf這個配置文件,這是apache的配置模塊化的一個表現(xiàn),這里不多說。
尋找httpd.conf中的ServerName,如果ServerName的設置不是域名 www.abc1.com的話,那么改為ServerName www.abc1.com,如過你要用ssl之類的東西,那么改為ServerName www.abc1.com:80,就是加了個端口。
2.修改httpd-vhosts.conf
添加如下代碼(有些可能文件里面就有,改一下就可以了):
NameVirtualHost *
<VirtualHost *>
DocumentRoot "C:/aic"
ServerName www.abc1.com
ServerAlias abc1.com *.abc1.com
</VirtualHost>
<VirtualHost *>
DocumentRoot "c:/aic/mybbonline"
ServerName www.efg2.com
ServerAlias efg2.com *.efg2.com
</VirtualHost>
值得注意的是,VirtualHost是有順序的,排在最前的VirtualHost的我們默認的網(wǎng)站域名,其中的DocumentRoot和ServerName都必須與httpd.conf中的一樣,包括端口。
DocumentRoot是虛擬主機的路徑
而ServerAlias是域名的別名,配置了這個,那么一些二級域名就都可以進行虛擬主機解析了。如*.efg2.com就可以代表bbs.efg2.com或news.efg2.com等。
-----------------------------------------------------------------
虛擬主機的一般形式諸如(extra/httpd-vhosts.conf):
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.domain.tld
ServerAlias domain.tld *.domain.tld
DocumentRoot /www/domain
</VirtualHost>
<VirtualHost *:80>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>
這是apache2.2中文參考手冊中的示例。一般的咱們這樣配置在以前版本是沒有問題的。但是現(xiàn)在就不一樣了。當訪問某個虛擬主機下的頁面的時候會出現(xiàn)類似:“403(禁止訪問),你無法查看該網(wǎng)頁…”的錯誤。很明顯這是拒絕訪問的提示。按照經(jīng)驗很容易找到(httpd.conf)下面的內(nèi)容:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
//先拒絕后允許Deny from all
//拒絕所有的訪問</Directory>
這一個部分就是對目錄進行訪問控制的,很顯然這設置得很嚴格,因此,我們必須手動加入虛擬機目錄的權限控制塊,才可以讓用戶正常訪問虛擬機的目錄及頁面文件。有兩個地方可以加入虛擬目錄訪問權限控制塊:主配置文件httpd.conf和虛擬機配置文件httpd-vhost.conf,毫無疑問我們選擇虛擬機配置文件,主要是維護起來更方便。那么我們把目錄訪問控制塊插入到虛擬機配置文件,這樣我們的虛擬主機的配置文件寫法就類似這樣:
<VirtualHost *:80>
DocumentRoot "E:/web"
ServerName www.domain.tld
<Directory "E:/web">
//插入開始
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
//插入結束</VirtualHost>
這樣配置完成后,我們使用apachectl命令及相關參數(shù)來檢測配置文件是否有問題。確認無誤后進行,重新啟動apache服務。然后使用瀏覽器進行訪問測試(呵呵!又是廢話了!)。如果還不行的話,那就檢查你的頁面文件的權限設置是否過高,導致的不能訪問了!當然這種情況在windows下比較少見,一般可能出現(xiàn)在linux環(huán)境下
關健詞:apache
新文章:
- CentOS7下圖形配置網(wǎng)絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動項
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機IP講解
- CentOS7使用hostapd實現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡重啟出錯
- 解決Centos7雙系統(tǒng)后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認iptable規(guī)則詳解