总共有三种方法:通过不同的IP地址

          通过不同的域名

          通过不同的端口号

(1).通过不同的IP地址实现

  例如一台CentOS7有两个IP:192.168.5.101和192.168.5.103

[root@youxi1 conf]# cd /etc/httpd/conf.d/
[root@youxi1 conf.d]# vim test.conf  //新建一个配置文件
<VirtualHost 192.168.5.101:9988>  //IP和端口
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/  //指向的路径
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost 192.168.5.103:9988>  //IP和端口
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/test/  //指向的路径
ServerName dummy-host.example.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
[root@youxi1 conf.d]# vim /var/www/html/index.php
/var/www/html/index.html
[root@youxi1 conf.d]# vim /var/www/html/test/index.html
/var/www/html/test/index.html
[root@youxi1 conf.d]# systemctl restart httpd.service

  实验结果:

(2).通过不同的域名实现

  首先需要在域名管理系统中将两个域名解析的IP地址指向同一个。

[root@youxi1 conf.d]# vim test.conf  //新建一个配置文件
<VirtualHost *:9988>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/  //指向的路径
ServerName www.youxi1.com
ErrorLog logs/www.youxi1.com-error_log
CustomLog logs/www.youxi1.com-access_log common
</VirtualHost>
<VirtualHost *:9988>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/test/  //指向的路径
ServerName test.youxi1.com
ErrorLog logs/test.youxi1.com-error_log
CustomLog logs/test.youxi1.com-access_log common
</VirtualHost>
[root@youxi1 conf.d]# systemctl restart httpd.service

  由于我没有DNS服务器,所以修改hosts文件

[root@youxi1 conf.d]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.5.101 www.youxi1.com
192.168.5.101 test.youxi1.com

  Windows修改在C:\Windows\System32\drivers\etc目录下的hosts文件

192.168.5.101 www.youxi1.com
192.168.5.101 test.youxi1.com

  实验结果:

(3).通过不同的端口号实现

  修改/etc/httpd/conf/https.conf文件,添加监听端口

Listen 9988
Listen 9989

  接着再修改新建的test.conf

[root@youxi1 conf.d]# vim test.conf
<VirtualHost *:9988>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/
ServerName www.youxi1.com
ErrorLog logs/www.youxi1.com-error_log
CustomLog logs/www.youxi1.com-access_log common
</VirtualHost>
<VirtualHost *:9989>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/test/
ServerName www.youxi1.com
ErrorLog logs/www.youxi1.com-error_log
CustomLog logs/www.youxi1.com-access_log common
</VirtualHost>
[root@youxi1 conf.d]# systemctl restart httpd.service
[root@youxi1 conf.d]# vim /etc/hosts
192.168.5.101 www.youxi1.com

  Windows修改在C:\Windows\System32\drivers\etc目录下的hosts文件

192.168.5.101 www.youxi1.com

  实验结果:

Apache实现一台服务器上运行多个网站的更多相关文章

  1. 在一台服务器上搭建多个网站的方法(Apache版)

    Apache的配置文件一般放置在/etc/httpd/conf文件夹下,httpd.conf是它的主配置文件,在进行配置时可以将虚拟主机的配置文件单独配置,如取名为vhost.conf,然后再http ...

  2. 如何在同一台服务器上安装多套通达OA

    本人最近研究了在同一服务器安装多套通达OA的方法:发现网上关于这个话题的文章比较少,于是录制成视频,在此发布,希望对有这方面需求的朋友有所帮助: http://blog.163.com/zhuwei_ ...

  3. Capistrano:自动完成多台服务器上新版本的同步更新,包括数据库的改变

    https://baike.baidu.com/item/Capistrano/6844928?fr=aladdin   Capistrano是一种在多台服务器上运行脚本的开源工具,它主要用于部署we ...

  4. Linux课程---16、apache虚拟主机设置(如何在一台服务器上配置三个域名)

    Linux课程---16.apache虚拟主机设置(如何在一台服务器上配置三个域名) 一.总结 一句话总结:有三个网站www.lampym.com,bbs.lampym.com,mysql.lampy ...

  5. 在多台服务器上简单实现Redis的数据主从复制(3)(转载)

    转载地址:http://www.cnblogs.com/liping13599168/archive/2011/04/14/2016226.html Redis的主从复制功能非常强大,一个master ...

  6. 在多台服务器上简单实现Redis的数据主从复制

          Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构.下面我演示下怎样在多台服务器上 ...

  7. 一台服务器上同时启动多个 Tomcat

    在同一台服务器上启动多个 Tomcat 服务,需要修改 conf/server.xml文件里的三个部分,如下: 1.修改Http访问端口(默认为8080端口) <Connector port=& ...

  8. Linux 笔记 #03# 在 Debian远程服务器上运行 Java socket程序

    我试图做什么:把我的破代码放到服务器上运行,并成功与客户端进行 socket通信. 预备环境:刚安装好 MySQL 和 JVM 的 Linux远程服务器(Debian 8)一台. 主要有如下几个步骤: ...

  9. 在同一台服务器上启动多个 FreeSWITCH 实例

    有时候,需要用到多个FreeSWITCH进行测试,或者需要在一台服务器上部署多个“不兼容”的系统.我们在这一节探讨一下怎么做. 背景故事 几年前我还在Idapted工作的时候,由于需要连接Skype及 ...

随机推荐

  1. opengl 4.5 中文api 链接

    https://www.cnblogs.com/wiki3d/p/opengl_a.html

  2. Insufficient space for shared memory file 解决办法

    Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory file:   /tmp/hsperfd ...

  3. SQL JOB实现数据库同步

    数据库同步是一种比较常用的功能.以下结合我自己的体会整理的,如果有理解不完全或者有误的地方望大牛不理赐教.下面介绍的就是数据库同步的两种方式: 1.SQL JOB的方式  sql Job的方式同步数据 ...

  4. dubbo的初探

    1.RPC  基本概念1.1 RPC  协议(Remote Procedure Call Protocol)远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议 ...

  5. [ 转载 ]hashCode及HashMap中的hash()函数

    hashCode及HashMap中的hash()函数   一.hashcode是什么 要理解hashcode首先要理解hash表这个概念 1. 哈希表 hash表也称散列表(Hash table),是 ...

  6. JAVA开发WEBSERVICE方式

    webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录. 1.Axis2方式 Axis是apache下一个开源的webservice开发 ...

  7. 利用XtraBackup给MYSQL热备(基于数据文件)

    利用XtraBackup给MYSQL热备(基于数据文件) By JRoBot on 2013 年 11 月 26 日 | Leave a response 利用XtraBackup给MYSQL热备(基 ...

  8. node.js通过回调函数获取异步函数的返回结果

    html文件代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  9. Shiro 中的 SecurityUtils(转)

    在 Shiro 中 SecurityUtils 是一个抽象类.并且没有任何子类.在其中声明了一个静态属性,三个静态方法. 静态属性 securityManager private static Sec ...

  10. 使用docker配置gitlab服务器

    下载gitlab镜像,导入 [root@gitlab ~]# docker load < gitlab_zh.tar 容器需要22端口,所以修改ssh的默认端口 [root@gitlab ~]# ...