apache服务的配置文件组成:
-
全局变量
-
主服务器配置
-
虚拟主机配置:
apache服务的配分文件格式:
directive value
# directive 不区分字符大小写
# value 为路径时,是否区分大小写,取决于文件系统
配置文件的语法检查:
httpd -t 或者 apachectl -t
配置文件的官方文档:
http://httpd.apache.org/docs/2.4/
apache的基础配置
1.指定服务器的服务名,用来标识一台服务器,并不会影响服务器的正常访问
- ServerName指令
格式:
ServerName www.example.com:80
2.在主配置文件中包含其他配置文件
所有服务配置都放在主配置文件会造成文件太臃肿,可以放在不同的配置文件中,通过在主配值文件中进行引用。
- 指令:Include
Include file-path 或 directory-path
IncludeOptional file-path 或directory-path
说明:
-
Include和IncludeOptional功能相同,都可以包括其它配置文件
-
但是当无匹配文件时,include会报错,IncludeOptional会忽略错误
3.定义配置文件的总路径
- ServerRoot 指令,定义了配置文件的总路径,后面配置文件的路径可以写相对路径。
[root@CentOS8 ~]# vim /etc/httpd/conf/httpd.conf
ServerRoot "/etc/httpd" #定义总路径,
IncludeOptional conf.d/*.conf #相对于ServerRoot的路径
Include conf.modules.d/*.conf #相对于ServerRoot的路径,专门存放模块的配置
4.监听的IP和PORT
定义apache服务建通本机的指定ip、端口。
- Listen指令:
Listen [IP:]PORT
说明:
-
省略IP表示为本机所有IP
-
Listen指令至少一个,可重复出现多次,同时监听多个端口
例如:
Listen 192.168.1.100:8080 #监听指定ip的端口
Lsten 80 #监听本机所有ip的80端口
5.隐藏服务器的版本信息:
将自己服务器的版本信息隐藏起来。
- ServerTokens指令:通过各种选项来指定显示的版本信息。
格式: ServerTokens 选项
Prod[uctOnly] ---Server: Apache
Major --- Server: Apache/2
Minor --- Server: Apache/2.0
Min[imal] --- Server: Apache/2.0.41
OS --- Server: Apache/2.0.41 (Unix)
Full (or not specified) --- Server: Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2 此为默认值(什么都显示)
#建议使用:ServerTokens Prod
例如:隐藏apache的版本信息
[root@CentOS8 conf.d]# vim hide_version.conf
ServerTokens Prod
[root@CentOS8 conf.d]# systemctl restart httpd
[root@CentOS8 ~]# curl -I 10.0.0.14
HTTP/1.1 200 OK
Date: Tue, 11 Oct 2022 09:05:17 GMT
Server: Apache #只显示apache,隐藏了版本
Last-Modified: Tue, 11 Oct 2022 07:38:12 GMT
ETag: "b-5eabd5bc53323"
Accept-Ranges: bytes
Content-Length: 11
Content-Type: text/html; charset=UTF-8
6.持久连接
连接建立,每个资源获取完成后不会断开连接,而是继续等待其它的请求完成,默认开启持久连接
断开持久连接的条件:
-
时间限制:以秒为单位, 默认5s,httpd-2.4 支持毫秒级
-
请求数量: 请求数达到指定值,也会断开
缺点:对并发访问量大的服务器,持久连接会使有些请求得不到响应
持久连接相关指令:
KeepAlive On|Off #默认就是开启持久连接的
KeepAliveTimeout 15 #连接持续15s,可以以ms为单位,默认值为5s
MaxKeepAliveRequests 500 #持久连接最大接收的请求数,默认值100
标签:httpd,配置文件,常见,Server,Apache,conf,Linux,apache
From: https://www.cnblogs.com/heyongshen/p/16786450.html