如何配置XAMPP的虛擬主機[轉]
首先xampp在httpd.conf裡面配置禁止遍歷整個檔案系統,對檔案系統的預設訪問被禁止,保護伺服器檔案。原來配置如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
但是如果要讓虛擬主機能被訪問,有兩個解決辦法:一個是在全局裡將Deny from all改成Allow from all ,但是有沒發起到保護檔案的作用;另一個辦法是在虛擬主機裡面加程式碼,如下:
<VirtualHost *:80>
ServerAdmin
DocumentRoot D:projectseachbrand.com
ServerName www.eachbrand.com
##能通過多個域名訪問
#ServerAlias eachbrand.com *.eachbrand.com
ErrorLog logs/www.eachbrand.com-error_log
CustomLog logs/www.eachbrand.com-access_log common
<Directory />
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
基於域名的虛擬主機規則
1.必須指定伺服器IP地址(和可能的埠)來使主機接受請求,這個可以用 NameVirtualHost指令來進行配置。如果伺服器上所有的IP地址都會用到,你可以用"*"作為NameVirtualHost的引數。如果你 打算使用多埠(如執行SSL)你必須在引數中指定一個埠號,比如"*:80"。
2.為每個虛擬主機建立
<VirtualHost>
段
<VirtualHost>
的引數與NameVirtualHost的引數必須是一樣的(比如說,一個IP地址或"*"代表的所有地址)。在每個VirtualHost段中,至少 要有一個ServerName指令來指定伺服哪個主機和一個DocumentRoot指令來說明這個主機的內容位於檔案系統的什麼地方。
3.取消中心主機, 如果你想在現有的web伺服器上增加虛擬主機,你必須也為現存的主機建造一個
<VirtualHost>
定義塊。這個虛擬主機中ServerName和DocumentRoot所包含的內容應該與全域性的ServerName和DocumentRoot保持一致。還要把這個虛擬主機放在配置檔案的最前面,來讓它扮演預設主機的角色。
示範程式碼:
NameVirtualHost *:80
## for mainhost
<VirtualHost *:80>
ServerName localhost:80
DocumentRoot "/xampp/htdocs"
</VirtualHost>
## for virtualhost
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot D:projectskakapo.cn
ServerName www.kakapo.cn
##能通過多個域名訪問
#ServerAlias kakapo.cn *.kakapo.cn
ErrorLog logs/www.kakapo.cn-error_log
CustomLog logs/www.kakapo.cn-access_log common
</VirtualHost>