文章目录
概述
当在访问Web服务时,从本质上来说访问某个IP主机上的端口(默认端口是80端口),通常是需要访问不同的域名或者端口,来实现对不同网站恶的网站的访问,这个时候就需要设置网站空间。
主要分为三种:基于域名、基于端口、基于IP
一、虚拟主机
优点:
1、同时在同一台服务器中运行多个web站点,其中每个站点并不独立占用一台真正的计算机。
2、通过虚拟web主机可以充分利用服务器的硬件资源,从而降低网站构建及运行成本。
3、http可以方便额构建虚拟主机服务器,只需要运行一个http服务器就能支撑许多http站点。
二、httpd支持的虚拟主机类型
1、基于域名
- 为每个虚拟主机使用不同的域名,但是其对应的IP地址是相同的
- 域名不同,IP相同,端口相同
- 基于域名是最为普遍的虚拟wed主机类型
2、基于IP地址
- 为每个虚拟主机使用不同的域名,且各自对应的IP地址也不相同
- 这种方式需要为服务器配备多个网络接口,因此应用不是很广泛
- IP不同,端口不同
3、基于端口
- 这种方式并不使用域名,IP地址来区分不同的站点内容,而不是使用不同的TCP端口号
- 因此用户在浏览不同的虚拟站点时需要同时制定端口号才能访问
- IP不同,端口不同
三、Apache操作方法
1、安装
- 安装apache环境依赖包
- 指定安装目录,启动字符集支持
[root@loaclhost ~]# cd httpd-2.4.29/
--prefix=/usr/local/httpd \ #指定httpd服务程序的安装路径
--enable-so \ #启用动态加载核心模块支持,使httpd具备进一步扩展功能的能力
--enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi #启动cgi(通用网关接口)脚本程序支持,便于增强网站的外部扩展应用访问能力
- 编译安装
- 没有报错说明已经成功了
2、优化管理
- 优化设置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录便于识别
- 添加httpd系统服务
[root@loaclhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@loaclhost httpd-2.4.29]# vim /etc/init.d/httpd
# chkconfig: 35 85 21 //35级别自动运行 第85个启动 第21个关闭
# description: Apache is a World Wide Web server
- 启动服务
- 访问网页
3、基于域名的虚拟主机
- 在/etc/hosts文件中临时配置域名与IP地址的映射关系
- 为虚拟主机准备网页文件
[root@loaclhost ~]# mkdir -p /var/www/html/accp
[root@loaclhost ~]# mkdir -p /var/www/html/benet
[root@loaclhost ~]# cd /var/www/html
[root@loaclhost html]# ls
accp benet
[root@loaclhost html]# cd accp
[root@loaclhost accp]# vim index.html
[root@loaclhost html]# cd benet
[root@loaclhost benet]# vim index.html
- 添加虚拟主机配置
<VirtualHost 192.168.159.191:80>
DocumentRoot "/var/www/html/accp"
ServerName www.accp.com
ErrorLog "logs/accp.com-error_log"
CustomLog "logs/accp.com-access_log" common
</VirtualHost>
<VirtualHost 192.168.159.191:80>
DocumentRoot "/var/www/html/benet"
ServerName www.benet.com
ErrorLog "logs/benet.com-error_log"
CustomLog "logs/benet.com-access_log" common
</VirtualHost>
<Directory "/var/www/html">
Options None
AllowOverride None
Require all granted
</Directory>
- 添加独立的配置文件
- 网页访问
4、基于地址的虚拟主机
-
创建临时网卡
-
修改虚拟主机配置
-
修改在/etc/hosts文件中临时配置域名与IP地址的映射关系
-
重启服务
[root@loaclhost ~]# systemctl restart httpd
- 进入网页测试
5、基于端口的虚拟主机
- 修改主机配置
- 修改主配置文件,增加监听端口8080
[root@loaclhost ~]# vim /etc/httpd.conf
51 #Listen 12.34.56.78:80
52 Listen 80
53 Listen 8080
[root@loaclhost ~]# systemctl restart httpd
- 进入网页进行测试
四、日志分割
1、访问日志设置
root@loaclhost ~]# vim /usr/local/httpd/conf/httpd.conf
失败日志
276 ErrorLog "| /usr/local/bin/rotatelogs -l /var/log/combined/error_log_%Y%m%d.log 86400"
访问日志
305 CustomLog "| /var/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d,log 86400" combined
2、查看日志
- 修改系统时间测试日志会不会随之改变