Apache中配置多主机多站点,可以通过两种方式实现

  • 将同一个域名的不同端口映射到不同的站点(虚拟主机)
  • 将同一个端口映射成不同的域名,不同的域名映射到不同的站点

两种方法可以同时存在,局域网通过  ip:端口的配置方法跟统一域名不同端口的配置方法一样

我们只需要修改相应的配置文件即可。

一、准备工作

1、修改系统 hosts文件

centos中hosts的文件路径: /etc/hosts

在这个文件中我们加入如下两行代码:

 在     127.0.0.1后面添加 www.liuyazhuang.com,www.lyz.com

这两行代码的意思是将www.liuyazhuang.com和www.lyz.com映射到本机的ip地址上。

2、准备两个站点 (ps:这两个站点可以放到任意的下面)

分别在

1>   /var/www/myweb1,下面有个index.html文件.内容是"这是/var/www/myweb1"站点.

2>   /usr/local/http2/htdocs/myweb2,下面有个index.html文件.内容是"这是/usr/local/http2/htdoces/myweb2"站点.(安装好LAMP后,默认的站点)

二、具体实现

我们分别讲解两种不同的实现方案

1)修改监听端口

在Apache的httpd.conf中,将监听端口修改为8080和8090,具体如下图所示:

2)注释默认的访问路径(本人亲身测试, 注释掉或者不注释掉都可以,貌似没啥影响)

在httpd.conf文件中找到如下代码:

  1. DocumentRoot "/usr/local/http2/htdocs"

将这行代码注释掉,如下图:

3)打开引入httpd-vhosts.conf文件的注释

在httpd.conf文件中找到如下代码:

  1. # Virtual hosts
  2. #Include conf/extra/httpd-vhosts.conf

将#Include conf/extra/httpd-vhosts.conf这行代码的注释打开,如下图:

2、修改Apache的httpd-vhosts.conf文件

我们说到的方案一和方案二,只是在配置httpd-vhosts.conf文件的时候有所不同。

在 http-vhosts.conf 配置的虚拟主机总的 文件夹访问权限配置<Directory>也可以放到httpd.conf中

方案一、

将同一个域名的不同端口映射到不同的虚拟主机(站点),不同端口映射到不同的站点

在httpd-vhosts.conf文件中添加如下代码:

  1. #配置我们自己的虚拟主机
  2. <VirtualHost www.lyz.com:8080>
  3. #配置访问跟目录
  4. DocumentRoot "d:/Apache/myweb1"
  5. #这里配置欢迎首页面
  6. DirectoryIndex index.html index.htm index.php
  7. <Directory />
  8. Options FollowSymLinks
  9. #不允许别人修改我们的页面
  10. AllowOverride None
  11. #设置访问权限
  12. Order allow,deny
  13. Allow from All
  14. </Directory>
  15. </VirtualHost>
  16. #配置我们自己的虚拟主机
  17. <VirtualHost www.lyz.com:8090>
  18. #配置访问跟目录
  19. DocumentRoot "d:/Apache/myweb2"
  20. #这里配置欢迎首页面
  21. DirectoryIndex index.html index.htm index.php
  22. <Directory />
  23. Options FollowSymLinks
  24. #不允许别人修改我们的页面
  25. AllowOverride None
  26. #设置访问权限
  27. Order allow,deny
  28. Allow from All
  29. </Directory>
  30. </VirtualHost>

具体如下图所示:

启动Apache在浏览器中输入:http://www.lyz.com:8080显示"我是第一个站点",输入:http://www.lyz.com:8090显示"我是第二个站点"。

方案二、

将同一个端口映射成不同的域名,不同的域名映射到不同的站点。

在httpd-vhosts.conf文件中添加如下代码:

  1. #配置我们自己的虚拟主机
  2. <VirtualHost *:8080>
  3. #配置访问跟目录
  4. DocumentRoot "d:/Apache/myweb1"
  5. ServerName www.lyz.com
  6. #这里配置欢迎首页面
  7. DirectoryIndex news.html index.html index.htm index.php
  8. <Directory />
  9. Options FollowSymLinks
  10. #不允许别人修改我们的页面
  11. AllowOverride None
  12. #设置访问权限
  13. Order allow,deny
  14. Allow from all
  15. </Directory>
  16. </VirtualHost>
  17. #配置我们自己的虚拟主机
  18. <VirtualHost *:8080>
  19. #配置访问跟目录
  20. DocumentRoot "d:/Apache/myweb2"
  21. ServerName www.liuyazhuang.com
  22. #这里配置欢迎首页面
  23. DirectoryIndex news.html index.html index.htm index.php
  24. <Directory />
  25. Options FollowSymLinks
  26. #不允许别人修改我们的页面
  27. AllowOverride None
  28. #设置访问权限
  29. Order allow,deny
  30. Allow from all
  31. </Directory>
  32. </VirtualHost>

具体如下图所示:

启动Apache在浏览器中输入:http://www.lyz.com:8080显示"我是第一个站点",输入:http://www.liuyazhuang.com:8080显示"我是第二个站点"。

虚拟主机(多站点配置)的实现--centos上的实现的更多相关文章

  1. Apache之——多虚拟主机多站点配置的两种实现方案

    Apache中配置多主机多站点,可以通过两种方式实现: 将同一个域名的不同端口映射到不同的虚拟主机,不同端口映射到不同的站点: 将同一个端口映射成不同的域名,不同的域名映射到不同的站点. 我们只需要修 ...

  2. 基于虚拟主机的HAProxy配置实战

    本实例是如上图所示 主要实现的功能如下: 当客户访问www.tb.com/tb.com的时候HAProxy将网站提交到电商服务器集群当访问bbs.tb.com的时候,将访问请求调度到论坛集群,实现论坛 ...

  3. httpd虚拟主机、站点访问控制、基于用户的访问控制、持久链接等应用配置实例

    httpd配置内容 httpd2.2 配置文件: /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/*.conf 服务脚本: /etc/rc.d/init.d/ ...

  4. http虚拟主机的简单配置训练

    http的虚拟主机 对于某些web访问站点而言,每天的访问量很少,因此真正的放一台服务器去进行web站点是很 浪费资源的,因此我们选择了虚拟主机 web处理模块的分类(MPM) 1.perfork 一 ...

  5. ESXi5 中克隆Linux虚拟主机的网络配置

    虚拟化技术果然非常方便,尤其是windows主机,克隆后在网络管理中改一下IP即可. 但对于Linux来说就有点麻烦,只修改IP还不行,还有MAC地址,网卡指定等,这个规程对应新手来说没有大半天搞不定 ...

  6. linux上nginx上配置虚拟主机的相关配置

    1.配置主配置: nginx/conf/nginx.conf 2.虚拟主机配置:nginx/conf/extra/learn.weixin.com.conf 配置完后,重启服务器!

  7. apache php配置 虚拟目录 和 虚拟主机 多域名配置 原理解析

    虚拟目录配置 就是说,我们放项目放在D盘,F盘,而不是默认的www文件夹下也可以访问.比如这里,我在 D:/PHP/work 放入的项目文件. 在httpd.conf加入: (位置一般是在 </ ...

  8. linux Nginx VirtualHost虚拟主机多站点设置

    linux系统CentOS7 Nginx1.9.9 一台nginx服务器同一IP被注册多个不同域名,访问不同域名到该服务器后请求不同项目 本台nginx服务器的IP地址为 192.168.155.12 ...

  9. tomcat生产环境JDK部署及虚拟主机等常用配置详解

    jdk和tomcat环境部署: 1.删除系统自带的openjdk # java -version java version "1.7.0_45" OpenJDK Runtime E ...

随机推荐

  1. ubuntu 安装低版本firefox

    firefox 57以后很多插件不支持了,ubuntu16自带火狐版本59,想换回56. 1.下载想换回的版本 https://ftp.mozilla.org/pub/mozilla.org/fire ...

  2. Powershell Get-FileHash

    File Hash (Get-FileHash C:\fso\myfile.txt).hash Get-FileHash C:\Users\Andris\Downloads\Contoso8_1_EN ...

  3. easyui的datagrid无数据时下方滚动条不显示的解决办法(标题栏显示不完全)

    easyui在写datagrid的时候标题栏有时候因为太多.太长所以无法显示所有的列,而且没数据的时候下方的滚动条是不显示的,这样就无法显示所有的列了.解决办法如下: onLoadSuccess: f ...

  4. 个案排秩 Rank (linear algebra) 秩 (线性代数)

    非叫“秩”不可,有秩才有解_王治祥_新浪博客http://blog.sina.com.cn/s/blog_8e7bc4f801012c23.html 我在一个大学当督导的时候,一次我听一位老师给学生讲 ...

  5. access variables from the global scope 在全局范围内访问变量的2种方法

    w http://php.net/manual/zh/language.variables.scope.php http://php.net/manual/en/language.variables. ...

  6. root Permission denied

    w 遇见现象,原因待查

  7. Java 之内部类

    概述 内部类修饰符 内部类的细节 局部内部类 匿名内部类及其应用 匿名内部类细节 内部类概述 将一个类定义在另一个类的里面, 里面的那个类就称为内部类(内置类, 嵌套类). class Outer { ...

  8. pycharm调试

    pycharm调试 flask app调试: 1.打开edit configurations面板 run===>edit configurations(图一或图二处都可以) 2.配置项目信息 点 ...

  9. django之多表查询与创建

    https://www.cnblogs.com/liuqingzheng/articles/9499252.html # 一对多新增数据 添加一本北京出版社出版的书 第一种方式 ret=Book.ob ...

  10. 你真的会用Retrofit2吗?Retrofit2完全教程

    本文注目录: Retrofit入门 Retrofit注解详解 Gson与Converter RxJava与CallAdapter 自定义Converter 自定义CallAdapter 其它说明 前言 ...