apache虚拟主机三种配置方式小结

 更新时间:2016年01月16日 11:55:17   作者:Brad_Chen  
这篇文章主要介绍了apache虚拟主机三种配置方式小结,需要的朋友可以参考下

使用虚拟主机必须要注释掉httpd的主机模块,即修改httd.conf的主配置文件,找到,将这段内容注释掉就可以了。

apche的虚拟主机配置一共有三种,即基于IP、基于port、以及基于域名的。为了后面试验,需要配置两个IP地址(我主机现在的IP地址是10.10.50.100),命令如下:

#ip addr add 10.10.50.101/16 dev eth0
#ip addr add 10.10.50.102/16 dev eth0

关于如何配置IP地址,此处不再赘述,后面我会专门写篇关于IP地址的文章。

第一种:基于IP

apache默然安装的时候,主配置文件位于/etc/httpd/conf/下的httpd.conf,可以在该文件的最下面来添加虚拟主机,但是我习惯于重新建立一个虚拟主机配置文件,这样方便与日后的管理操作。

1.创建虚拟主机配置文件

# mkdir /etc/httpd/conf.d/virtual.conf

2.编辑该文件,添加如下内容

ServerName www.jb51.net
DocumentRoot "/www/jb51.net"

ServerName www.jbzj.com
DocumentRoot "/www/jbzj.com"

------保存退出即可,这是最简单的配置
3.创建跟目录文件

#mkdir /www/{jb51.net,jbzj.com}

4.在跟目录文件下创建主页文件,用于后面的访问测试

#vi /www/jbzj.com/index.html,添加一下内容

This is jb51 test

保存退出。然后编辑另一个目录下面的主页文件

#vi /www/jbzj.com/index.html,添加一下内容

This is jbzj test

5.重启httpd服务(重启之前最好先检查一下语法是否有问题httpd -t)

service httpd restart

6.客户端访问测试

分别在浏览器内输入:

10.10.50.100和10.10.50.101

会看到我们之间定义的主页。

第二种 基于端口Port的虚拟主机

同样使用上面创建的vitual.conf作为配置文件,假设我们此时使用80和8080端口,IP地址为10.10.50.102

1.修改httpd的主配置文件,vi /etc/httpd/conf/httpd.conf

首先将Listen 80前面的注释去掉,然后再添加一行Listen 8080,保存退出。

2.修改虚拟主机配置文件,添加如下内容

ServerName www.jb51.net
DocumentRoot "/www/jb51.net"

ServerName www.jb51.org
DocumentRoot "/www/jb51.org"

3.创建所需的根文件

#mkdir /www/{jb51.net,jb51.org}

4.创建各根文件的默认访问页面,创建过程同第一种步骤四,这是把里面的内容换成你能识别的就可以了。我使用的分别是jb51.net和jb51.org两个表示符。

5.检查语法

httpd -t

6.重启服务
7.访问测试

分别在浏览器上输入10.10.50.102以及10.10.50.102:8080,因为浏览器默认是使用80端口,所以当访问80端口的网站时可以不用指定端口。

第三种 基于域名的虚拟主机

1.基于域名的虚拟主机,首先要在虚拟配置文件中指定IP:PORT,即修改虚拟配置文件,在第一行添加NameVirtualHost 10.10.50.100:80

然后在下面添加以下信息

ServerName hello.jb51.net
DocumentRoot "/hello/jb51.net"

ServerName hello.jb51.org
DocumentRoot "/hello/jb51.org"

2.创建所需的跟文件目录
mkdir /hello/{jb51.net,jb51.org}

3.编辑根文件目录下面的主页文件,参照上面的方法

4.修改客户端主机的hosts文件,确保可以正常解析咱们设定的两个域名

hosts文件位于/C/windows/Drivers/etc/hosts(好像是的,记得不太清楚了,童鞋们可以百度一下)

添加以下两列

10.10.50.100 hello.jb51.net
10.10.50.100 hello.jb51.org

5.通过ping命令确保可以正常解析

即ping hello.jb51.net和ping hello.jb51.org都显示是通的,且返回值为10.10.50.100即可。

6.重启httpd服务

7.浏览器测试

分别在浏览器里输入hello.jb51.net和hello.jb51.org然后查看主页面是不是我们之前的标识页面即可。

补充:

1.虚拟主机也支持访问日志和错误日志的位置重定义,即只需要在DocumentRoot 下面添加进日志信息条目即可,比如我要让hello.jb51.org的访问日志和错误日志都重定位到/hello/jb51.org/log下面,需要添加这行

CutomLog "/hello.jb51.org/log" combined
ErrorLog "/hello/jb51.org/log"

保存退出之后,再创建jb51.org下面的log目录即可。

2.虚拟主机也支持返回服务器的状态信息

例如我要显示服务器,只要在httpd的主配置文件中将这段信息的内容去掉注释即可,将Allow from后面添加你的IP地址,这样只允许你自己访问查看。查看的方法:在浏览器输入hello.jb51.org/server-status即可查看。即如果说Directory是定义了文件路径的话,那么Location则定义的是URL路径,任意一个路径后面添加server-status都可以查看服务器信息。

3.虚拟主机同样支持真实主机一样的访问限制

相关文章

  • Serverless 架构如何演进详细介绍

    Serverless 架构如何演进详细介绍

    这篇文章主要介绍了Serverless 架构如何演进详细介绍的相关资料,需要的朋友可以参考下
    2017-03-03
  • linux 查看磁盘空间大小命令

    linux 查看磁盘空间大小命令

    本篇文章主要介绍了linux 查看磁盘空间大小情况,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Ubuntu18.04 Server版安装及使用(图文)

    Ubuntu18.04 Server版安装及使用(图文)

    这篇文章主要介绍了Ubuntu18.04 Server版安装及使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Linux之使用split将一个大文件拆分成多个小文件

    Linux之使用split将一个大文件拆分成多个小文件

    这篇文章主要介绍了Linux之使用split将一个大文件拆分成多个小文件实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • Linux之crontab定时执行脚本方式

    Linux之crontab定时执行脚本方式

    这篇文章主要介绍了Linux之crontab定时执行脚本方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • Linux系统下根目录扩容介绍

    Linux系统下根目录扩容介绍

    大家好,本篇文章主要讲的是Linux系统下根目录扩容介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • LNMP下FTP服务器的安装与使用方法(Pureftpd和Proftpd)

    LNMP下FTP服务器的安装与使用方法(Pureftpd和Proftpd)

    FTP是网站文件维护中使用比较多的,目前LNMP一键安装包中有Pureftpd和Proftpd服务器安装脚本
    2013-06-06
  • Apache跨域资源访问报错问题解决方案

    Apache跨域资源访问报错问题解决方案

    这篇文章主要介绍了Apache跨域资源访问报错问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • centos7系统nginx服务器下phalcon环境搭建方法详解

    centos7系统nginx服务器下phalcon环境搭建方法详解

    这篇文章主要介绍了centos7系统nginx服务器下phalcon环境搭建方法,结合具体实例形式详细分析了centos7的nginx服务器搭建phalcon的具体操作步骤与相关设置技巧,需要的朋友可以参考下
    2019-09-09
  • linux手动、自动更改网卡MAC地址的方法

    linux手动、自动更改网卡MAC地址的方法

    这篇文章主要给大家介绍了关于linux如何手动、自动更改网卡MAC地址的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用linux具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06

最新评论