虚拟主机
虚拟主机,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的服务(支持WWW、FTP/E-mail等)功能。一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理。
虚拟主机配置
虚拟主机总共有三种配置方式
1.基于端口
需要开启多个listen端口
2.基于IP
需要配置多个ip,填写在<VirtualHost *:80>中,其中*号代表任意IP
3.基于域名
下面主要讲解基于域名的配置方法,这个会了,上面两个就都会了,很简单。
1.首先需要把主服务器站点的根路径注释掉,因为要配置很多主机,网站的目录可以在不同的地方。
编辑配置文件:
#/etc/httpd/conf/httpd.conf
2.虚拟主机配置部分
编辑配置文件:/etc/httpd/conf/httpd.conf 在下面添加以下内容
详解:
NameVirtualHost *:80 //为一个基于域名的虚拟主机制定一个IP地址和端口 <VirtualHost *:80> //包含作用于指定主机名或IP地址的指令 ServerName www.ky.com //服务器用于辨识自己的主机名 DocumentRoot "/var/www/html/ky/" //指定数据存放的目录 ErrorLog "/var/log/httpd/ky.err" //存放错误日志的位置 CustomLog "/var/log/httpd/ky.access" common //存放访问日志的位置 </VirtualHost>
3.创建目录和文件
上面的内容填完之后,下面就开始对应着路径创建对应的文件了
#mkdir /var/www/html/ky //创建目录ky #mkdir /var/www/html/ky2 //创建目录ky2 #touch /var/log/httpd/ky.err //创建对应网站ky目录的错误日志 #touch /var/log/httpd/ky.access //创建对应网站ky目录的访问日志 #touch /var/log/httpd/ky2.err //创建对应网站ky2目录的错误日志 #touch /var/log/httpd/ky2.access //创建对应网站ky2目录的访问日志
4.DNS解析,我这里DNS配置好了,来看一下
主配置文件添加的区域
ky.com.zone库文件
ky2.com.zone
5.在客户端上测试
这样就完成基于不同网站(目录),相同端口,相同IP的网站访问。
HTTPS:
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司(Netscape)进行,并内置于其浏览器Netscape Navigator中,提供了身份验证与加密通讯方法。
配置httpd工作于https:
1.安装mod_ssl模块
# yum install mod_ssl
生成私钥,自颁证书,声明自己是ca服务器
2.为服务端生成私钥,并为其提供证书
# mkdir /etc/httpd/ssl && cd /etc/httpd/ssl # (umask 077; openssl genrsa -out httpd.key 1024) # openssl req -new -key httpd.key -out httpd.csr 签署后的证书为:/etc/httpd/ssl/httpd.crt
3.配置使用https的虚拟主机
修改默认目录访问自己网站的目录,添加服务器名称
启用证书,启用密钥
4.验证
将证书导入客户端,这里要导入CA自颁的证书cacert.pem,改名为cacert.crt,这里不是导入给
HTTP签发的证书,因为,这是我们自己建立的CA服务器,网上根本就没有,无法验证,这里为了
实现目的,就直接导入CA的自颁证书了。
这样就成功了,就可以看见,证书有效,并认证成功,实现了安全访问,这种大多用于交易性网
站上,这里只是基本的实现过程。