Linux CentOS7 httpd 配置注释

本文首发:https://www.somata.net/2019/linux_centos_httpd_config_comment.html

如果没看懂可以去看看官方发布的文档 apache官方文档

conf/httpd.conf

ServerRoot "/etc/httpd"					# 指定服务配置根目录
Listen 80								# 监听端口
Include conf.modules.d/*.conf			# 包含模块配置文件
User apache								# 使用的用户进程和组
Group apache
ServerAdmin root@localhost				# 服务器管理员邮箱,用于错误提示。
DocumentRoot "/var/www/html"			# 指定服务网页根目录
<Directory />							# 为指定目录设置不同权限
    AllowOverride none					# 禁止使用.htaccess 中的指令
    Require all denied					# 禁止所有访问
</Directory>
<Directory "/var/www">
    AllowOverride None
    Require all granted					# 允许访问
</Directory>
<Directory "/var/www/html">
    Options Indexes FollowSymLinks		# 允许的参数(索引(建议禁用),跟随软连接)
    AllowOverride None
    Require all granted
</Directory>
<IfModule dir_module>
    DirectoryIndex index.html			# 指定默认首页
</IfModule>
<Files ".ht*">
    Require all denied					# 禁止访问该文件
</Files>
ErrorLog "logs/error_log"				# 日志记录
LogLevel warn
<IfModule log_config_module>			# 日志配置
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
    CustomLog "logs/access_log" combined	# 指定日志文件名和格式(结合)
</IfModule>
<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"	# 路径别名
</IfModule>
<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>
<IfModule mime_module>						# 指定文件格式和mime对应
    TypesConfig /etc/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>
AddDefaultCharset UTF-8						# 指定默认编码
<IfModule mime_magic_module>
    MIMEMagicFile conf/magic				# 指定mime
</IfModule>
EnableSendfile on							# 开启sendfile功能
# sendfile功能必须在Linux kernel 2.1版本以后内核中才能开启
# sendfile功能直接跳过了将内容复制到用户缓冲区的过程,直接将文件内容复制到了socket缓冲区
# 加快了文件的发送速度。
IncludeOptional conf.d/*.conf

conf.d/autoindex.conf

IndexOptions FancyIndexing HTMLTable VersionSort		# 索引选项
Alias /icons/ "/usr/share/httpd/icons/"
<Directory "/usr/share/httpd/icons">
    Options Indexes MultiViews FollowSymlinks
    AllowOverride None
    Require all granted
</Directory>
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip	# 根据文件编码来分配图标
AddIconByType (TXT,/icons/text.gif) text/*						# 根据文件类型来分配图标
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*
AddIcon /icons/binary.gif .bin .exe								# 根据文件后缀来分配图标
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif /core
AddIcon /icons/bomb.gif */core.*
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^
DefaultIcon /icons/unknown.gif					# 默认的未知文件
ReadmeName README.html							# 和下面一个共同用于添加索引的上下文件内容
HeaderName HEADER.html
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t	# 指定要隐藏的文件。

conf.d/welcome.conf

<LocationMatch "^/+$">										# 仅将该规则用于规则匹配的URL
    Options -Indexes											# 去除所有参数
    ErrorDocument 403 /.noindex.html			# 错误返回代码和网页
</LocationMatch>
<Directory /usr/share/httpd/noindex>
    AllowOverride None
    Require all granted
</Directory>
Alias /.noindex.html /usr/share/httpd/noindex/index.html
Alias /noindex/css/bootstrap.min.css /usr/share/httpd/noindex/css/bootstrap.min.css
Alias /noindex/css/open-sans.css /usr/share/httpd/noindex/css/open-sans.css
Alias /images/apache_pb.gif /usr/share/httpd/noindex/images/apache_pb.gif
Alias /images/poweredby.png /usr/share/httpd/noindex/images/poweredby.png

conf.d/ssl.conf

Listen 443 https
SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog		# 加密私钥的对话类型
SSLSessionCache         shmcb:/run/httpd/sslcache(512000)		# SSL对话密钥的存储位置
SSLSessionCacheTimeout  300										# SSL对话密钥的超时时间
SSLRandomSeed startup file:/dev/urandom  256					# 随机种子的获取地址
SSLRandomSeed connect builtin									# 如果无法使用urandom则使用内置随机数生成器
SSLCryptoDevice builtin											# 硬件加密策略,默认使用内置,可是使用openssl engine 插叙是否可是使用其他硬件加密策略
#SSLCryptoDevice rdrand	# 这个是intel的硬件加密引擎
<VirtualHost _default_:443>
    ErrorLog logs/ssl_error_log					# 指定错误日志位置
    TransferLog logs/ssl_access_log				# 指定默认日志位置
    LogLevel warn								# 指定日志级别
    SSLEngine on								# 开启 SSL 加密引擎
    SSLProtocol all -SSLv2						# 配置所加密策略可用,取消使用SSLv2
    SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SEED:!IDEA	# 密码交换策略
    # HIGH:使用所有Triple-DES的密码
    # MEDIUM:所有具有128位加密的密码
    # 这里的 ! 是用于禁止指定的策略分别是aNULL(没有身份验证),MD5(MD5哈希函数),IDEA(IDEA加密)
    SSLCertificateFile /etc/pki/tls/certs/localhost.crt	# 证书存储位置
    SSLCertificateKeyFile /etc/pki/tls/private/localhost.key	# 密钥存储位置
    <Files ~ "\.(cgi|shtml|phtml|php3?)$">
        SSLOptions +StdEnvVars					# 这里的选项是用于SSL连接的额外配置
        # 主要是给脚本提供一些其他的与SSL相关环境变量,不过会消耗部分系统资源,推荐关闭。下同。
    </Files>
    <Directory "/var/www/cgi-bin">
        SSLOptions +StdEnvVars
    </Directory>
    BrowserMatch "MSIE [2-5]" \					# 这个是关于User-Agent的相关参数
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
    # 第一个参数是正则匹配User-Agent,然后会创建后面的环境这些环境变量,并且变量默认值为1
    CustomLog logs/ssl_request_log \			# 日志参数
              "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

本文经「原本」原创认证,作者乾坤盘,访问yuanben.io查询【KWDNERPU】获取授权信息。

posted @ 2019-09-04 10:40  乾坤盘  阅读(1479)  评论(0编辑  收藏  举报