目录
[四、httpd.conf 配置文件](#四、httpd.conf 配置文件)
一、Apache网站服务基础
1.1.主要特点:
开放源代码、跨平台应用
支持多种网页编程语言
模块化设计 、运行稳定、良好的安全性
1.2.软件版本:
1.X
目前最高版本是1.3,运行稳定
向下兼容性较好,但缺乏一些较新的功能
2.X
目前主要包括2.2和2.4两个版本
具有更多的功能特性
与1.X相比,配置管理风格存在较大差异
二、安装httpd服务器
2.1.编译安装的优点:
具有较大的自由度,功能可定制
可及时获得最新的软件版本
普遍适用于大多数Linux版本,便于移植使用
2.2.准备工作:
环境准备:
关闭防火墙服务
关闭selinux
所需工具包复制到Linux虚拟机中
配置固定IP地址
systemctl stop firewalld
systemctl status firewalld.service
sestatus
ifconfig ens33

vim /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=static
...
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
GATEWAY=192.168.100.254
DNS1=192.168.100.254

systemctl restart network
ifconfig ens33

2.3.配置本地yum源:
mount /dev/cdrom /media/ 
cd /etc/yum.repos.d/
mkdir bak

移动大部分原有配置文件 到 bak位置
mv CentOS-Debuginfo.repo CentOS-Sources.repo CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo CentOS-CR.repo bak

vim CentOS-Media.repo
centos
name=CentOS-$releasever - Media
baseurl=file:///media/
gpgcheck=1
enabled=1
gpgkey=file:///media/RPM-GPG-KEY-CentOS-7

清除yum缓存
yum clean all

2.4.安装编译环境、相关依赖包:
yum -y install gcc* make* apr apr-util apr-util-devel pcre pcre-devel

apr:Apache可移植运行库。
pcre:perl语言兼容正则表达式,是一个用C语言编写的正则表达式函数库。
2.5.配置、编译、安装:
tar xvfz httpd-2.4.46.tar.gz -C /usr/src/
cd /usr/src/httpd-2.4.46/
./configure --prefix=/usr/local/httpd \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cgi

--prefix 指定安装路径
--enable-so 让apache核心装载DSO(动态共享目标) 动态加载模块支持
--enable-rewrite 启用网页地址重写功能
--enable-charset-lite 启动字符集支持
--enable-cgi 启用CGI脚本程序支持
make -j2
make install 
2.6.优化执行路径:
软链接:
ln -s /usr/local/httpd/bin/* /usr/local/bin/
ls /usr/local/httpd/bin/ /usr/local/bin/
httpd -v

2.7.添加httpd系统服务:
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd
#!/bin/sh
chkconfig: 35 85 21
description: apache!

将httpd添加为系统服务
chkconfig --add httpd

查看httpd服务的自启动状态
chkconfig --list httpd

设置httpd服务开机自启
chkconfig httpd on

启动httpd服务
systemctl start httpd.service 
35(运行级别) 85(系统开机时服务启动的顺序) 21(系统关机时服务关闭的顺序)
三、httpd服务器的基本配置
3.1.配置文件:
vim /usr/local/httpd/conf/httpd.conf
ServerName www.qqq.com:80

httpd -t

systemctl restart httpd.service
vim /etc/hosts
192.168.100.10 www.qqq.com

3.2.网页文档:
(可新建)
cat /usr/local/httpd/htdocs/index.html

3.3.访问:
浏览器 localhost或127.0.0.1
3.4.查看web站点的访问情况:
tail /usr/local/httpd/logs/access_log
tail /usr/local/httpd/logs/error_log

注:编译安装成功后
安装在:/usr/local/httpd/ 目录下
配置文件:/usr/local/httpd/conf/httpd.conf
启动命令:/usr/local/httpd/bin/apachectl
默认网站家目录:/usr/local/httpd/htdcos
四、httpd.conf 配置文件
4.1.常用的全局配置参数:
ServerRoot:服务目录
ServerAdmin:管理员邮箱
User:运行服务的用户身份
Group:运行服务的组身份
ServerName:网站服务器的域名
DocumentRoot:网页文档的根目录
Listen:监听的IP地址、端口号
PidFile:保存httpd进程PID号的文件
DirectoryIndex:默认的索引页文件
ErrorLog:错误日志文件的位置
CustomLog:访问日志文件的位置
LogLevel:记录日志的级别,默认为warn
Timeout:网络连接超时,默认为300秒
KeepAlive:是否保持连接,可选On或Off
MaxKeepAliveRequests:每次连接最多请求文件数
KeepAliveTimeout:保持连接状态时的超时时间
Include:需要包含进来的其他配置文件
4.2.补充知识:软链接和硬链接:
软链接可以理解成快捷方式。它和windows下的快捷方式的作用是一样的
硬链接等于cp -p 加 同步更新
1、定义不同
软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。
硬链接就是一个文件的一个或多个文件名。把文件名和计算机文件系统使用的节点号链接起来。因此我们可以用多个文件名与同一个文件进行链接,这些文件名可以在同一目录或不同目录。
2、限制不同
硬链接只能对已存在的文件进行创建,不能交叉文件系统进行硬链接的创建;
软链接可对不存在的文件或目录创建软链接;可交叉文件系统;
3、创建方式不同
硬链接不能对目录进行创建,只可对文件创建;
软链接可对文件或目录创建;
4、影响不同
删除一个硬链接文件并不影响其他有相同 inode 号的文件。
删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接被称为死链接(即dangling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。