這裡是指同一IP綁定N個網域名稱,有二種方式實現
方法1、僅修改httpd.conf
假設二個網域名稱bbs.xxx.com與blog.xxx.com
開啟httpd.conf
將檔案拖到最下面,加上
- <VirtualHost *:80>
- ServerName bbs.xxx.com #網域名稱
- DocumentRoot "F:/website/bbs" #該網域名稱對應的目錄位址
- <Directory "F:/website/bbs"> #該節點是配置許可權、預設首頁啊等等東東。
- Options FollowSymLinks IncludesNOEXEC Indexes
- DirectoryIndex index.php
- AllowOverride None
- Order Deny,Allow
- Allow from all
- </Directory>
- </VirtualHost>
-
- <VirtualHost *:80>
- ServerName blog.xxx.com
- DocumentRoot "D:/PHPSite/wordpress"
- <Directory "D:/PHPSite/wordpress">
- Options FollowSymLinks IncludesNOEXEC Indexes
- DirectoryIndex index.php
- AllowOverride None
- Order Deny,Allow
- Allow from all
- </Directory>
- </VirtualHost>
重啟apache,就OK啦。當然你要修改你的hosts檔案。
方法2、修改\PhpServer\Apache2.2\conf\extra\httpd-vhosts.conf
直接將上面一段copy到httpd-vhosts.conf的最後即可。
實際上看名字就知道httpd-vhosts.conf是一個虛擬網站配置集中地,方便管理。
也就是如下:
#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerName bbs.xxx.com #網域名稱
DocumentRoot "F:/website/bbs" #該網域名稱對應的目錄位址
<Directory "F:/website/bbs"> #該節點是配置許可權、預設首頁啊等等東東。
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.php
AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName blog.xxx.com
DocumentRoot "D:/PHPSite/wordpress"
<Directory "D:/PHPSite/wordpress">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.php
AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
</VirtualHost>
重啟apache。
如果不行的話,看你的httpd.conf是否啟用了vhost
開啟httpd.conf,找到
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
看是否啟用,即去掉Include conf/extra/httpd-vhosts.conf前的#
重啟apache,爽去吧。