Apache基于域名、端口、IP的虚拟主机配置(Centos 6.5)
虚拟主机:部署多个站点,每个站点,希望用不同的域名和站点目录,或者是不同的端口,不同的ip,需要虚拟主机功能。一句话,一个http服务要配置多个站点,就需要虚拟主机。
虚拟主机分类:基于域名、基于端口、基于ip;所谓的基于**,就是靠**来区分不同的站点,支持各种混合,N多个虚拟主机。
基于域名的虚拟主机配置如下:
创建环境:
站点目录 | 域名 |
/var/html/blog | blog.bqh123.com |
/var/html/bbs | bbs.bqh123.com |
[root@bqh- extra]# mkdir /var/html/{blog,bbs} -p
[root@bqh- extra]# touch /var/html/{blog,bbs}/index.html
[root@bqh- extra]# tree /var/html/
/var/html/
├── bbs
│ └── index.html
└── blog
└── index.html directories, files
[root@bqh- extra]# for name in blog bbs;do echo "http://$name.bqh123.com" >/var/html/$name/index.html;done
[root@bqh- extra]# for name in blog bbs;do cat /var/html/$name/index.html;done
http://blog.bqh123.com
http://bbs.bqh123.com
配置虚拟主机配置文件:httpd-vhosts.conf
[root@bqh- extra]# vim httpd-vhosts.conf #
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration. #
# Use name-based virtual hosting.
#
NameVirtualHost *: #
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/blog"
ServerName blog.bqh123.com
ServerAlias bg.bqh123.com
ErrorLog "logs/blog-error_log"
CustomLog "logs/blog-access_log" common
</VirtualHost> <VirtualHost *:>
ServerAdmin @qq.com
DocumentRoot "/var/html/bbs"
ServerName bbs.bqh123.com
ServerAlias bs.bqh123.com
ErrorLog "logs/bbs-error_log"
CustomLog "logs/bbs-access_log" common
/VirtualHost>
在主配置文件(httpd.conf)里激活生效:
- Include conf/extra/httpd-vhosts.conf
- Include conf/extra/httpd-mpm.conf
检测配置文件语法错误并刷新配置:
[root@bqh- extra]# ../../bin/apachectl -t
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
[root@bqh- extra]# ../../bin/apachectl graceful
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
配置一下hosts解析:
[root@bqh- extra]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.0.119 blog.bqh123.com bbs.bqh123.com
windows系统,在“C:\Windows\System32\drivers\etc”下的hosts中配置一下域名解析:
----------------------------------------------------------------------------------
用cur或客户端浏览器测试一下:
解决方法:
在主配置文件(httpd.conf)追加一下内容:
<Directory "/var/html">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
检测配置文件语法错误,刷新配置,从新启动:
[root@bqh- conf]# vim httpd.conf
[root@bqh- conf]# ../bin/apachectl -t
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
[root@bqh- conf]# ../bin/apachectl graceful
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
用cur或客户端浏览器测试一下:
---------------------------------------------------------------------------------
ok,Apache基于域名的虚拟主机配置及测试完成。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
基于端口的虚拟主机配置如下:
①在主配置文件httpd.conf里配置监听新增端口:
②在虚拟机配置文件httpd-vhosts.conf修改如下:
③检测配置文件语法错误,刷新配置,从新启动:
[root@bqh- conf]# ../bin/apachectl -t
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
[root@bqh- conf]# ../bin/apachectl graceful
httpd: apr_sockaddr_info_get() failed for bqh-
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[root@bqh- conf]# netstat -lntup|egrep "80|90"
tcp ::: :::* LISTEN /httpd
tcp ::: :::* LISTEN /httpd
④用cur或客户端浏览器测试一下:
注:如果不加端口访问,默认以ip的形式解析访问。
ok,Apache基于端口的虚拟主机配置及测试完成。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
基于IP的虚拟主机配置如下:
①添加别名IP
②在虚拟机配置文件httpd-vhosts.conf修改如下:
③检测配置文件语法错误,刷新配置,从新启动:
④用cur或客户端浏览器测试一下:
ok,Apache基于IP的虚拟主机配置及测试完成
Apache基于域名、端口、IP的虚拟主机配置(Centos 6.5)的更多相关文章
- CentOS 7运维管理笔记(6)----Apache 基于 IP 的虚拟主机配置
Apache 配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置.本篇随笔记录自己基于IP的虚拟主机配置. 如果同一台服务器有多个IP,可以使用基于IP的 ...
- Nginx总结(二)基于ip的虚拟主机配置
前面讲了如何安装配置Nginx,大家可以去这里看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.html 今天要说的 ...
- 源码编译安装LAMP环境及配置基于域名访问的多虚拟主机
实验环境及软件版本: CentOS版本: 6.6(2.6.32.-504.el6.x86_64) apache版本: apache2.2.27 mysql版本: Mysql-5.6.23 php版本 ...
- 源码编译安装LNMP环境及配置基于域名访问的多虚拟主机
实验环境及软件版本: CentOS版本: 6.6(2.6.32.-504.el6.x86_64) nginx版本: nginx-1.6.2 mysql版本: Mysql-5.6.23 php版本: ...
- mac 下 xampp 多域名 多站点 多虚拟主机 配置
前言:最近用mac工作了,需要搭建个调试前段程序的站点,选了xampp,需求是能同时运行多个站点,多个域名,目录自定义,网上找了好多资料,都感觉有些不符合心意,且复制文确实很多,甚至有些没实践过的在乱 ...
- 基于ip的虚拟主机配置——在一台服务器上绑定多个 IP 地址
进入/etc/sysconfig/network-scripts,修改ifcfg-ens33文件 输入 ip addr 查看ip 引用:https://blog.csdn.net/u013887008 ...
- 【 APACHE 】 Apache2.4.x版本虚拟主机配置
今天准备使用apache搭建一个目录浏览的服务,折腾了一下. apache2.4.x以后的版本: Require all granted 代替了apache2.4.x以前版本: Order Allow ...
- lamp centos虚拟主机配置
1.基于不同端口的虚拟主机配置 [root@lamp~]# vi /etc/httpd/conf/httpd.conf Listen 80 #设置监听不同的虚拟主机需要使用的端口 Liste ...
- Nginx配置基于多域名、端口、IP的虚拟主机
原文:https://www.cnblogs.com/ssgeek/p/9220922.html ------------------------------- Nginx配置基于多域名.端口.IP的 ...
随机推荐
- 【shell比较字符串】
if [ 'AAA' = 'ABC' ]; then echo "the same" else echo "not the same" fi shell比较字符 ...
- linq list select用法注意事项
下面是我自己做的一个例子 List<CR_CustomerOrder> OrdList = new List<CR_CustomerOrder>(); var b = OrdL ...
- 关于STM32F405的GPIO中断问题
1. 下面的图,应该是多个引脚中断挂在同一个中断号上面,也就是PA0和PB0同时挂在一个中断源上面,那么就是说只能同时使用其中一个 寄存器的配置,确实只能有一个使用
- colaboratory安装指定版本的tensorflow
查看当前安装的tensorflow版本 !pip show tensorflow 安装指定版本 !pip install tensorflow==2.0 这速度,香不香.
- ipad 如何 Airplay 到 Windows 上?
最近刚好有用到这个,觉得还不错,就推荐给大家.虽然个人并不喜欢苹果这一套,但是工作里难免掺杂一些会用到的ipad , mac . 纯粹技术分享. 1. 5KPlayer : https://www.5 ...
- request.GET、request.POST、request.body(持续更新)
1.request.GET: print(request.GET) # <QueryDict: {'page' : ['5'], 'id__gt' : ['4']}> print(requ ...
- PMP备考笔记--1.1
题型 200道中英文单选题 基本概念题(%10) 过程工具/技术和输入输出题ITTO (%10) 情景题(%70) 计算题(3-5道题) 图 pmp四大挑战 试卷100页,题干长,阅读量大,考试4个小 ...
- kill 掉 占据端口的进程
netstat -anp | grep 80kill -9 进程号
- java-version不是内部或外部命令的问题
有时java-version的错误并不一定是环境配置的问题 ,可能是粗心的问题 运行——cmd——输入java -version 看清.java命令后是有个空格的 -version应该只是参数而已 我 ...
- Hibernate常用api以及增删改查
一 .API的定义 所谓的API全称就是(Application Programming Interface,应用程序编程接口).就是类库对外提供的接口.类.枚举.注解等元素. 如:JDK API ...