Apache虚拟主机配置详解
Apache虚拟主机配置详解
1、配置环境说明
系统环境:CentOS7
Apache环境:编译安装的httpd-2.4.7
系统限制:关闭了防火墙和selinux
hosts文件中配置以下域名解析
192.168.115.150 www.web1.com
192.168.115.150 www.web2.com
2、Apache虚拟主机简介
虚拟主机是指在一个机器上运行多个网站(例如:www.web1.com和www.web2.com)。每个站点希望用不同的域名和站点目录,或者是不同端口、不同的IP就需要虚拟主机。
3、Apache虚拟主机的分类
(1)基于IP地址的虚拟主机:一台服务器上使用不同IP地址对应不同站点
(2)基于域名的虚拟主机:一台服务器上使用不同的域名对应不同站点
(3)基于端口的虚拟主机:一台服务器上使用不同的端口对应不同站点
4、Apache基于IP的虚拟主机配置方法
(1)创建web1和web2站点的目录和网页文件
[root@localhost ~]# mkdir -p /www/web{1..2}/logs/
[root@localhost ~]#echo 'www.web1.com'>/www/web1/index.html
[root@localhost ~]# echo 'www.web2.com'>/www/web2/index.html
[root@localhost ~]# tree /www
/www
├── web1
│ ├── index.html
│ └── logs
└── web2
├── index.html
└── logs
(2)修改Apache相关配置文件
[root@localhost ~]# vim /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf 删除这一行的注释
[root@localhost ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost 192.168.115.150:80>
DocumentRoot "/www/web1"
ServerName www.web1.com
ServerAlias web1.com
ErrorLog "/www/web1/logs/web1_error.log"
CustomLog "/www/web1/logs/web1_access.log" common
<Directory "/www/web1">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 192.168.115.160:80>
DocumentRoot "/www/web2"
ServerName www.web2.com
ErrorLog "/www/web2/logs/web2_error.log"
CustomLog "/www/web2/logs/web2_access.log" common
<Directory "/www/web2">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
[root@localhost ~]# /usr/local/apache2/bin/apachectl -t 检查语法
Syntax OK
[root@localhost ~]# systemctl restart httpd 重启服务
(3)浏览器或Linux中进行访问测试
为了方便我这里直接在Linux中测试了
[root@localhost ~]# curl 192.168.115.150
www.web1.com
[root@localhost ~]# curl 192.168.115.160
www.web2.com
5、Apache虚拟主机基于域名配置方法
(1)创建web1和web2站点的目录和网页文件
[root@localhost ~]# mkdir -p /www/web{1..2}/logs/
[root@localhost ~]#echo 'www.web1.com'>/www/web1/index.html
[root@localhost ~]# echo 'www.web2.com'>/www/web2/index.html
[root@localhost ~]# tree /www
/www
├── web1
│ ├── index.html
│ └── logs
└── web2
├── index.html
└── logs
(2)修改Apache相关配置文件
[root@localhost ~]# vim /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf 删除这一行的注释
[root@localhost ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost www.web1.com:80>
DocumentRoot "/www/web1"
ServerName www.web1.com
ServerAlias web1.com
ErrorLog "/www/web1/logs/web1_error.log"
CustomLog "/www/web1/logs/web1_access.log" common
<Directory "/www/web1">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost www.web2.com:80>
DocumentRoot "/www/web2"
ServerName www.web2.com
ErrorLog "/www/web2/logs/web2_error.log"
CustomLog "/www/web2/logs/web2_access.log" common
<Directory "/www/web2">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
[root@localhost ~]# systemctl restart httpd
(3)浏览器或Linux中进行访问测试
为了方便我这里直接在Linux中测试了
[root@localhost ~]# curl www.web1.com
www.web1.com
[root@localhost ~]# curl www.web2.com
www.web2.com
6、Apache虚拟主机基于端口配置方法
(1)创建web1和web2站点的目录和网页文件
[root@localhost ~]# mkdir -p /www/web{1..2}/logs/
[root@localhost ~]#echo 'www.web1.com'>/www/web1/index.html
[root@localhost ~]# echo 'www.web2.com'>/www/web2/index.html
[root@localhost ~]# tree /www
/www
├── web1
│ ├── index.html
│ └── logs
└── web2
├── index.html
└── logs
(2)修改Apache相关配置文件
[root@localhost ~]# vim /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-vhosts.conf 删除这一行的注释
Listen 80 添加监听的端口
Listen 8080
[root@localhost ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "/www/web1"
ServerName www.web1.com
ServerAlias web1.com
ErrorLog "/www/web1/logs/web1_error.log"
CustomLog "/www/web1/logs/web1_access.log" common
<Directory "/www/web1">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:8080>
DocumentRoot "/www/web2"
ServerName www.web2.com
ErrorLog "/www/web2/logs/web2_error.log"
CustomLog "/www/web2/logs/web2_access.log" common
<Directory "/www/web2">
Options Indexes
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
[root@localhost ~]# systemctl restart httpd
(3)浏览器或Linux中进行访问测试
为了方便我这里直接在Linux中测试了
[root@localhost ~]# curl 192.168.115.150:80
www.web1.com
[root@localhost ~]# curl 192.168.115.150:8080
www.web2.com
以上就是Apache虚拟主机配置的三种不同方法,可以根据实际需要进行配置。
转载于:https://blog.51cto.com/longlei/2093471
Apache虚拟主机配置详解相关推荐
- Apache 虚拟主机设置详解
Apache 虚拟主机设置详解 我们通常所说的虚拟主机技术就是将一台(或者一组)服务器的资源(系统资源.网络带宽.存储空间等)按照一定的比例分割成若干台相对独立的"小主机"的技术. ...
- Ubuntu 16.04与Apache虚拟主机配置的步骤详解
这篇文章主要给大家介绍了关于Ubuntu 16.04与Apache虚拟主机配置的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ubuntu16.04系统具有一定的参考学习价值,需要的朋友 ...
- Linux下Apache虚拟主机配置
说明: Apache版本:httpd-2.2.31 Apache安装目录:/usr/local/apache 目的: 配置Apache虚拟主机 具体操作: 1.修改Apache主配置文件 cp /us ...
- Windows系统中apache虚拟主机配置
参考文章如下: WINDOWS 下APACHE虚拟主机配置 Apache网站目录访问权限设置 首先,在Apache24文件夹中找到conf文件夹,并打开其中的extra文件夹,选择httpd-vhos ...
- linux apache部署php,Linux下apache虚拟主机配置多版本php同时运行 | 系统运维
学习本教程须掌握: 1.Linux下指定版本编译安装LAMP 2.Linux下Apache虚拟主机配置 3.CentOS 7.x编译安装Nginx1.10.3+MySQL5.7.16+PHP5.2 5 ...
- 简单介绍apache虚拟主机配置的三种方式
本文主要介绍了apache虚拟主机配置的三种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 记事本打开httpd.conf文 ...
- Linux中级实战专题篇一:nginx服务(特性优势,yum安装,编译安装详解,虚拟主机技术详解)
一.HTTP 介绍 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器 ...
- windows下Apache虚拟主机配置
找到host文件:C:\Windows\System32\drivers\etc\hosts 在hosts这么增加: 127.0.0.1 666.666.com 127.0.0.1 777.777.c ...
- linux apache ip配置,linux apache虚拟主机配置(基于ip,端口,域名)
配置环境: linux版本:Centos6.4 httpd版本: [[email protected] init.d]# pwd /etc/init.d [[email protected] init ...
最新文章
- 深入理解JVM(6)——类加载器
- pygame学习和python巩固——字体显示
- Spring Cloud:指定Eureka Serverd IP地址
- CABAC之手把手教你编码
- 两台linux之间互传php脚本,linux下两台服务器实现同步的方法
- 2017年网易校招题 输入一个数将其变为斐波那契数(最小步数)
- 《Python编程从入门到实践》记录之Python处理CSV文件数据
- IIS7下访问ashx页面,显示404
- Linux的EXPORT_SYMBOL和EXPORT_SYMBOL_GPL的使用和区别
- Servlet+Ajax实现搜索智能提示
- Centos7中完美搭建ftp服务器
- mysql insert优化_如何优化MySQL insert性能
- 【数据结构】线性表的链式存储结构
- 光纤的用途及主要种类
- 【舞女编程语言】:Ballerina 最新版和Ballerina Central
- EMACS 使用手册
- 简单易懂的颜色透明度计算
- Debian 下安装中文语言包和中文输入法
- 个人财务管理系统项目
- 保存切片找不到html,HTML5切片,结果文件损坏