服务-WEB-Apache
Apache(Web服务器)
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。
Apacheweb服务器软件拥有以下特性:
1.支持最新的HTTP/1.1通信协议
2.拥有简单而强有力的基于文件的配置过程
3.支持通用网关接口
4.支持基于IP和基于域名的虚拟主机
5.支持多种方式的HTTP认证
6.集成Perl处理模块
7.集成代理服务器模块
8.支持实时监视服务器状态和定制服务器日志
9.支持服务器端包含指令(SSI)
10.支持安全Socket层(SSL)
11.提供用户会话过程的跟踪
12.支持FastCGI
13.通过第三方模块可以支持JavaServlets
14.通过简单的API扩展,将Perl/Python等解释器编译到服务器中
注:
Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。
配置文件
yum安装的配置文件路径
[root@apache01 ~]# vim /etc/httpd/conf/httpd.conf
默认的web资源根目录
[root@apache01 ~]# cd /var/www/html
# vim /etc/httpd/conf/httpd.conf
ServerRoot "/etc/httpd" <---服务器的根路径,改文件中所有涉及到的路径的根都是相对它而言的。
Listen 80 <---监听的端口
Include conf.modules.d/*.conf <---包含辅助配置文件目录下的所有以.conf结尾的;;;文件(/etc/httpd/conf.modules.d/*.conf)
User apache <---运行web服务的用户
Group apache
ServerAdmin root@localhost <---管理员邮件地址
#ServerName www.example.com:80 <---服务器的名字
ServerName www.uplooking.com:80
<Directory /> <---容器,对整个目录中的东西进行设置,权限等等
AllowOverride none
Require all denied
</Directory>
DocumentRoot "/var/www/html" //web服务文档根路径
<Directory "/var/www">
AllowOverride None
# Allow open access:
Require all granted
</Directory>
<Directory "/var/www/html">
Options Indexes FollowSymLinks //Indexes:索引目录,(默认没有主页时),允许索引目录 FollowSymLinks:支持符号链接 软连接
AllowOverride None //和访问权限有关 可以进行认证 None --不使用认证 all--应用所有的认证指令 AuthConfig --允许使用与认证授权相关的指令
Require all granted //访问控制 所有人方行
</Directory>
<IfModule dir_module>
DirectoryIndex index.html //网站索引页的名称
</IfModule>
<Files ".ht*"> //以所有.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>
# Alias /webpath /full/filesystem/path //给路径设置别名 意味着访问http://Server_ip/webpath时,其页面文件来自于/full/filesystem/path中
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" //脚本路径的别名
</IfModule>
<Directory "/var/www/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule mime_module>
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 //默认字符集
#EnableMMAP off //线程模式
EnableSendfile on //开启进程模式(默认)
IncludeOptional conf.d/*.conf //包含辅助配置文件目录下的所有以.conf结尾的文件(/etc/httpd/conf.d/*.conf)