使用apache来配置虚拟主机,在单一系统上运行多个网站。

现在很多linux主机使用apache作为web服务器的,大部分是基于这个原理来配置虚拟主机的。

下面就windows下以apache 2.4.3作为演示的一个教程。

这里只是简单的说明下,简述实现的原理

1.Apache的配置文件httpd.conf,找到Virtual hosts,进行如下修改保存。

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
去掉第2行的‘#’号,改为
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

这样就开启了extra文件夹下的httpd-vhosts.conf,以后修改虚拟主机只要在这个文件进行。

2.对httpd-vhosts.conf进行配置。

例如域名www.a.com和www.b.com

# Virtual Hosts
#
# Required modules: mod_log_config # 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
# <URL:http://httpd.apache.org/docs/2.4/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. #
# 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>
ServerAdmin webmaster@a.com
DocumentRoot "d:/www/a"
ServerName a.com
ServerAlias www.a.com
ErrorLog "logs/a.com.log"
CustomLog "logs/a.com.log" common
<Directory "d:/www/a">
Require all granted
</Directory>
</VirtualHost> <VirtualHost *:80>
ServerAdmin webmaster@b.com
DocumentRoot "d:/www/b"
ServerName b.com
ServerAlias www.b.com
ErrorLog "logs/b.com.log"
CustomLog "logs/b.com.log" common
<Directory "d:/www/b">
Require all granted
</Directory>
</VirtualHost>

注意:apache 2.4以上版本中需要在目录下面添加 Require all granted,否则无论怎么访问都是403。

这个我也查找了好久才查出的原因,官方文档也没有找到说明的地方。

Apache虚拟主机(vhost)配置教程的更多相关文章

  1. apache 虚拟主机详细配置:http.conf配置详解

    apache 虚拟主机详细配置:http.conf配置详解 Apache的配置文件http.conf参数含义详解 Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd. ...

  2. Apache虚拟主机的配置

    虚拟主机的配置 基于IP地址的虚拟主机配置Listen 80DocumentRoot /www/example1ServerName www.example1.comDocumentRoot /www ...

  3. 【转】Apache虚拟主机的配置和泛解析域名的绑定

    基于IP地址的虚拟主机配置 Listen 80 DocumentRoot /www/example1 ServerName www.example1.com DocumentRoot /www/exa ...

  4. Apache 虚拟主机 VirtualHost 配置

    虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同 ...

  5. Windows下Apache 虚拟主机 VirtualHost 配置

    以下方式适合原生 Apache, XAMPP 和 WAMP 套件 1.修改Apache配置文件(httpd.conf),如下: # Virtual hostsInclude conf/extra/ht ...

  6. Apache虚拟主机&伪静态配置

    Apache基本操作 安装:yum install httpd 启动:systemctl start httpd 查看进程:ps -ef | grep httpd 查看端口:sudo netstat ...

  7. apache 虚拟主机的配置

    一.基于IP 1. 假设服务器有个IP地址为192.168.1.10,使用ifconfig在同一个网络接口eth0上绑定3个IP: [root@localhost root]# ifconfig et ...

  8. Nginx 虚拟主机 VirtualHost 配置

    Nginx 是一个轻量级高性能的 Web 服务器, 并发处理能力强, 对资源消耗小, 无论是静态服务器还是小网站, Nginx 表现更加出色, 作为 Apache 的补充和替代使用率越来越高. 我在& ...

  9. 配置Apache虚拟主机

    实验环境 一台最小化安装的CentOS 7.3虚拟机 配置基础环境 1. 安装apache yum install -y httpd 2. 建立虚拟主机的根目录 mkdir /var/wwwroot ...

随机推荐

  1. HTML5新增标签属性

    ----- 新类型表单 - email 自动校验输入的是不否是email 邮箱:<input type="email" name="user_email" ...

  2. linq递归

    public class Comment { public int Id { get; set; } public int ParentId { get; set; } public string T ...

  3. json 数字key json 数字作为主键

    但是当key的值为数字时,只能使用类似数组下表的访问方式取值. var json = '{"0":"a", "1":"b" ...

  4. css important

    !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权.语法格式{ cssRule !important },即 写在定义的最后面,例如:box{color:red !impo ...

  5. PHP字符

    匹配查找 strstr strpos 通常用在表单验证里面可以用到 substr 正值表达式匹配 preg_mathc(), preg)mathc_all() , preg_grep() 编码格式的转 ...

  6. websphere6.1安装与配置

    http://www.blogjava.net/103335460/articles/220935.html 一.本人开发环境: jdk1.5.0_11 , eclipse3.2 , MyEclips ...

  7. C语言字符知识狭区

    C语言字符在用户接口软件编程上经常用到,但是有一些狭区会让编程出现一些小BUG,现在总结与此. 1.'\\' 代表的是字符\,而'\'是不能代表字符\的.通常\后面都要跟上数字或者其他字母来表示一个特 ...

  8. SDC(1)–Hold Time

    从以下两个论点触发可能会使Hold Time的计算理解起来更加容易: (1) H = SU – 1 ; (2) Hold Check的目的是确保Source Clock在某个边沿打出数据时,该数据不会 ...

  9. QR code 乱谈(一)

    缘由 促使草人写这一系列(将会是)文章的原因是二维码现在很流行,很容易接触到,而且二维码又是那么容易就生成——就不说有很多在线的生成器,许多应用软件也都有生成二维码的功能,比如Firefox浏览器.Q ...

  10. maven 项目编译时候提示:Error building POM (may not be this project's POM).

    编译时候提示Error building POM (may not be this project's POM)的错误,具体信息如下: [0] 'dependencies.dependency.ver ...