一、概述
web服务器提供者,web中间件
能够提供html文本文档的传输
传输协议是http/https协议
默认端口:80/443
二、安装
1、 yum安装
systemctl stop NetworkManager
systemctl disable NetworkManager 关闭网络图形管
理工具
2、配置静态ip
进入网卡配置
cd /etc/sysconfig/network-scripts/
3、编辑网卡配置
vim ifcfg-ens33
文件内容
配置网卡后重启网络服务
三、选择安装方式
1、yum install httpd -y
2、编译安装
步骤
配置 ./configure
编译 make
安装 make install
编译安装的卸载只需要删除对应的安装目录
运维案例
基于CentOS7.9操作系统安装apache web组件。
操作流程
收集适合CentOS7.9操作系统的apache软件包版本
https://httpd.apache.org/download.cgi
将软件拖入并解压
rpm -q httpd 查看是否yum安装httpd,有的话卸载
./configure -h 查看配置的使用方法
根据编译的报错信息安装依赖关系
apr-devel
apr-util
apr-util-devel
pcre-devel
pcre-static
pcre-tools
pcre2-static
pcre2-devel
pcre2-tools
pcre2-utf32
make&&make install 安装完依赖
优化命令路径 ln -s /usr/local/apache2/bin /usr/sbin
优化启动服务管理
cp /usr/local/apache2/bin/apachectl* /etc/init.d/apached vim /etc/init.d/apached #!/bin/bash # chkconfig: 235 85 75 chkconfig --add /etc/init.d/apached
可以使用systemd管理 systemctl start apached
开机自启 chkconfig --level 35 apached
四、目录结构
1、yum安装
/etc/httpd 安装主目录
conf.modules.d 模块加载配置文件存储目录
conf.d conf目录的附属目录
conf 主配置文件存储目录
httpd.conf
ServerRoot "/etc/httpd" 服务安装根目录
Listen 80 监听端口
Include conf.modules.d/*.conf 引用外部配置文件到当前文件中
User apache 运行账户
Group apache 运行组
ServerName www.example.com:80 可用域名
DocumentRoot "/var/www/html" 网页文档根目录
DirectoryIndex index.html 默认访问首页
/usr/sbin 命令目录
/var/log/httpd
日志目录
日志级别 debug, info, notice, warn, error, crit,alert, emerg
日志类型
访问日志 access_log
错误日志 error_log
/var/www/html 网页源码存放目录
/run/httpd PID存储目录
/usr/share/doc/httpd-2.4.6 模板配置文件
httpd-vhosts.conf 虚拟主机头配置文件
2、编译安装
/usr/local/apache2
配置文件 conf
extra httpd-vhosts.conf 虚拟主机头配置
httpd.conf
主配置
ServerRoot "/usr/local/apache2 服务安装根目录
Listen 80 监听端口
Include conf.modules.d/*.conf 引用外部配置文件到当前文件中
User daemon 运行账户
Group daemon 运行组
ServerName www.example.com:80 可用域名
DocumentRoot "/usr/local/apache2/htdocs" 网页文档根目录
DirectoryIndex index.html 默认访问首页
五、虚拟主机头配置
基本配置
1、yum安装
mkdir /etc/httpd/extra
cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf /etc/http/extra
vim /etc/httpd/conf/httpd.conf在文件末尾追加: IncludeOptional extra/*.conf
将htpd.conf中Listen 80 注释掉
在httpd-vhosts.conf中加入:Listen 80
2、编译安装
vim /usr/local/apache2/conf/httpd.conf中去掉注释:Include conf/exta/httpd-vhosts.conf
将htpd.conf中Listen 80 注释掉
在httpd-vhosts.conf中加入:Listen 80
实现方式
基于不同的端口号
cd /etc/httpd/extra
Listen 80
Listen 81
基于不同的域名
cd /etc/httpd/extra
Listen 80
基于不同的IP地址
cd /etc/httpd/extra/
Listen 192.168.115.128:80
Listen 192.168.115.135:80
配置多地址
修改ens33的配置文件
IPADDR1=192.168.115.128
PREFIX1=24
IPADDR2=192.168.115.135
PREFIX2=24
利用ens33的子接口实现
临时 ifconfig ens33:0 192.168.115.136/24
永久 cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:1
vim ifcfg-ens33:1
六、配置文件语法检查
httpd -t -f /usr/local/apache2/conf/httpd.conf
七、配置https访问
yum安装
httpd-vhosts.conf内容全部注释
yum install -y mod_ssl
cd /etc/httpd/conf.d/
证书存储目录 /etc/pki/tls
vim ssl.conf
systemctl restart httpd
访问测试
curl 返回结果为html的源码
-I(大写i) 返回响应头
firefox https://192.168.115.128
ctrl + F5 深度刷新,忽略本地的浏览器缓存