一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Apache虚拟主机(vhost)配置例子

时间:2022-06-30 18:01:20 编辑:袖梨 来源:一聚教程网

先附上官方的examples:apache.org/docs/2.0/vhosts/examples.html">http://httpd.apache.org/docs/2.0/vhosts/examples.html

首先找到Apache的配置文件httpd.conf

确认有下面一行:

 代码如下 复制代码

# Virtual hosts
Include "conf/extra/httpd-vhosts.conf"

如果没有,请在配置文件末尾添加。然后找到httpd-vhosts.conf添加配置。

复制里面的一个example,进行修改,这里以example.com为例。

 代码如下 复制代码

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

    ServerAdmin [email protected]
    DocumentRoot "D:/xampp/htdocs/example"
    ServerName www.example.com
    ErrorLog "logs/www.example.com-error.log"

NameViretualHost是启用基于名字的虚拟主机,若不配置该选项,则只有第一个VirtualHost的配置会生效。

DocumentRoot指向网站的根目录即可,需要注意的是,localhost是指向默认的DocumentRoot,但添加过vhost配置以后,这个配置会失效,所以我们也需要为localhost配置一个虚拟主机,方便本地的调试。继续添加下面的配置:

 代码如下 复制代码


    ServerAdmin webmaster@localhost
    DocumentRoot "D:/xampp/htdocs"
    ServerName localhost
    ErrorLog "logs/localhost-error.log"

若有多个站点,多个IP,可以参照下面的配置:

 代码如下 复制代码

Listen 80

# This is the "main" server running on 172.20.30.40
ServerName server.domain.com
DocumentRoot /www/mainserver

# This is the other address
NameVirtualHost 172.20.30.50


DocumentRoot /www/example1
ServerName www.example1.com

# Other directives here ...

DocumentRoot /www/example2
ServerName www.example2.org

# Other directives here ...

所有不是发送至172.20.30.50的请求都会转发到main server;发送到172.20.30.50的请求,如果HostName未知或者在HTTP报头中没有指定HostName,那么该请求会转发至www.example1.com处理。

配置好之后,重启Apache即可让配置生效。

热门栏目