1.Apache概述:
(1)Apache是目前世界上使用最广泛的一种web server,它以跨平台,高效和稳定而闻名。
(2)Apache缺点是变得越来越重,被普遍认为是重量级的web server。(Apache主要采用的是基于进程的Prefork模式(还有基于线程的Worker模式),也就是,对于每个请求会用一个进程去进行服务,进程非常占资源,当并发量大的时候,就需要等额的进程,导致的是高内存占用和CPU占用,这就是所谓的“重量级”。 )
(3)Apache是基于模块化设计的,总体上看起来代码的可读性高于PHP代码,它的核心代码并不多,大多数的功能都被分割到各种模块中,各个模块在系统启动时按需载入。
2. Apache安装(yum源安装)
yum search apache | grep HTTP ##搜索Apache软件
yum install httpd -y ##yum安装
systemctl restart httpd ##开启服务
##本地测试(firefox访问127.0.0.1出现测试页即安装成功)
3.制作自己的默认访问页:
修改/var/www/html/目录下的index.html文件,内容修改为
<h1>Halo the World!</h1>
再在firefox访问127.0.0.1,就变成了你自己刚才设计的页面。
4.Apache配置
1.更改服务端口:
vim /etc/httpd/conf/httpd.conf
#找到以下行,修改80为你喜欢的端口号(443除外,443为https专用端口)
2.更改网站的默认发布目录:
首先创建自己的发布目录,然后编辑配置文件
vim /etc/httpd/conf/httpd.conf
将默认目录/var/www/html修改为你自己的目录,图中我创建的发布目录是/var/test/html
你会发现改完配置文件依然访问不了或者访问到的是默认页,这是因为你所创建的目录的标签不能被识别
执行以下命令修改标签
semanage fcontext -a -t httpd_sys_content_t '/var/test/html(/.*)?'
#修改标签
restorecon -RvvF '/var/test/html'
#刷新标签
重启服务再次访问即可
5.配置虚拟主机
虚拟主机技术是互联网服务器采用的节省服务器硬件成本的技术,虚拟主机技术主要应用于HTTP(Hypertext Transfer Protocol,超文本传输协议)服务,将一台服务器的某项或者全部服务内容逻辑划分为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬件资源。
1.建立各网站发布目录并设置SELinux标签
mkdir -p test/fang/news.fang.com
mkdir -p /var/test/fang/music.fang.com
semanage fcontext -a -t httpd_sys_content_t '/var/test/fang(/.*)?'
restorecon -RvvF '/var/test/fang'
2.创建虚拟主机默认配置文件:
vim /etc/httpd/conf.d/default.conf
/default.conf
<Virtualhost _default_:80>
DocumentRoot "/var/test/html"
CustomLog "logs/default.log" combined
</Virtualhost>
3.配置第一个网站(news)
vim /etc/httpd/conf.d/news.conf
<Virtualhost *:80>
ServerName news.fang.com
DocumentRoot /var/test/fang/news.fang.com
CustomLog "logs/news.log" combined
</Virtualhost>
<Directory "/var/test/fang/news.fang.com">
Require all granted
</Directory>
4.配置第二个网站(music)
vim /etc/httpd/conf.d/music.conf
<Virtualhost *:80>
ServerName music.fang.com
DocumentRoot /var/test/fang/music.fang.com
CustomLog "logs/music.log" combined
</Virtualhost>
<Directory "/var/test/fang/music.fang.com">
Require all granted
</Directory>
4.在访问此网站的主机里配置DNS
vim /etc/hosts
#在最下面增加一行
192.168.43.72 www.fang.com news.fang.com music.fang.com
5.测试:在配置过DNS的主机里通过浏览器依次访问:www.fang.com news.fang.com music.fang.com就会看到不同的内容