虚拟主机(多站点配置)的实现--centos上的实现

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显示"我是第二个站点"。

时间: 2024-10-25 18:46:39

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

虚拟主机多站点配置

1.在apache配置文件(httpd.conf)中开启多站点配置,那么多站点配置文件httpd-vhosts.conf所在位置一目了然. 注意:一旦进行多站点配置(httpd-vhosts.conf),那么原来的配置文件(httpd.conf)就失效了. 2.多站点配置 <VirtualHost>指令: 包含仅作用于指定主机或IP地址的指令,其中包含IP地址.端口号等信息,本机Apache默认端口为8080 ServerName指令:用来标识虚拟主机的名称和端口号 ServerAlias指令

基于httpd-2.2和httpd-2.4配置虚拟主机web站点,并提供https服务(一)

使用httpd-2.2和httpd-2.4实现 > 1.建立httpd服务,要求: > 1) 提供两个基于名称的虚拟主机www1, www2:要求每个虚拟主机都有单独的错误日志和访问日志: > 2) 通过www1的/server-status提供状态信息,且仅允许172.16.0.1主机访问: > 3) www2不允许192.168.1.0/24网络中任意主机访问: > 2.为上面的第2)个虚拟主机提供https服务. > 一.使用httpd-2.2实现基于主机名的虚拟

基于httpd-2.2和httpd-2.4配置虚拟主机web站点,并提供https服务(二)

使用httpd-2.2和httpd-2.4实现 > 1.建立httpd服务,要求: > 1) 提供两个基于名称的虚拟主机www1, www2:要求每个虚拟主机都有单独的错误日志和访问日志: > 2) 通过www1的/server-status提供状态信息,且仅允许172.16.0.1主机访问: > 3) www2不允许192.168.1.0/24网络中任意主机访问: > 2.为上面的第2)个虚拟主机提供https服务. > 二.基于httpd-2.4配置虚拟主机web站

基于httpd-2.2配置虚拟主机web站点,并提供https服务(一)

使用httpd-2.2和httpd-2.4实现 > 1.建立httpd服务,要求: > 1) 提供两个基于名称的虚拟主机www1, www2:要求每个虚拟主机都有单独的错误日志和访问日志: > 2) 通过www1的/server-status提供状态信息,且仅允许172.16.0.1主机访问: > 3) www2不允许192.168.1.0/24网络中任意主机访问: > 2.为上面的第2)个虚拟主机提供https服务. > 使用httpd-2.2实现基于主机名的虚拟主机

基于httpd-2.4配置虚拟主机web站点,并提供https服务(二)

使用httpd-2.2和httpd-2.4实现 > 1.建立httpd服务,要求: > 1) 提供两个基于名称的虚拟主机www1, www2:要求每个虚拟主机都有单独的错误日志和访问日志: > 2) 通过www1的/server-status提供状态信息,且仅允许172.16.0.1主机访问: > 3) www2不允许192.168.1.0/24网络中任意主机访问: > 2.为上面的第2)个虚拟主机提供https服务. > 基于httpd-2.4配置虚拟主机web站点,

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

本实例是如上图所示 主要实现的功能如下: 当客户访问www.tb.com/tb.com的时候HAProxy将网站提交到电商服务器集群当访问bbs.tb.com的时候,将访问请求调度到论坛集群,实现论坛负载均衡,当访问blog.tb.com的时候,将请求调度到博客服务器集群,实现博客集群的负载均衡,除了上面三种请求外,就将请求调度到缺省的其他服务器集群HAProxy的安装很简单,见 下面主要是来配置它 1 global 2 log 127.0.0.1 local0 info 3 maxconn 4

配置apache虚拟主机,实现在一台服务器上运行多个网站

配置apache虚拟主机,实现在一台服务器上运行多个网站 apache虚拟主机实现有三种方法: 1.通过不同的IP地址 2.通过不同的域名 3.通过不同的端口号 三种都需要把虚拟主机功能打开: [[email protected] ~]# vim /etc/httpd/conf/httpd.conf 改: #NameVirtualHost *:80 为: NameVirtualHost *:80 方法1:通过不同的IP地址,解析不同的域名 给服务器增加IP(另一个域名解析) [[email pr

tomcat应用实践(虚拟主机以及站点优化)

目前主流的Web开发编程语言有php,java以及.net等,但是大多数架构都会选择java作为开发语言,所以很多java应用容器很受大家欢迎,例如tomcat.jetty.resin,jboss等.我们是使用tomcat.接下来就介绍一下tomcat虚拟主机以及实际使用中的问题. tomcat 虚拟主机    使用过tomcat的童鞋都知道tomcat是默认的8080端口,而web默认的端口是80端口,同时还需要注意Linux系统里,非root权限用户不能使用1024以下的端口,对于一些服务,

配置Tomcat监听80端口、配置Tomcat的虚拟主机、日志配置

配置Tomcat监听80端口 编辑配置文件vim /usr/local/tomcat/bin/startup.sh 搜索关键字:Connector port ,将8080修改为80 更改完后保存退出,并且重启服务/usr/local/tomcat/bin/shutdown.sh/usr/local/tomcat/bin/startup.sh 这是可以查看tomcat监听的端口是否为80netstat -lntp |grep java 配置Tomcat的虚拟主机 编辑配置文件vim /usr/lo