1、ApacheWWW服务器配置一,Apache的特性1 Apache1.3的特性可以运行在几乎所有的计算机平台支持最新的HTTP1.1协议支持虚拟主机支持HTTP认证集成了代理服务器具有可定制的服务器日志支持Socket层(SSL)用户会话过程的跟踪能力支持通用网关接口CGI集成Perl脚本编程语言支持服务器端包含命令(SSI)支持FastCGI支持PHP支持Java Servlets支持第三方软件开发疝提供的大量功有模块。2 Apache 2.0的新特性新的多处理模块(Multi-Processing Module,MPM),使用此模块会在服务器处理多个请求时,控制Apache的运行方式。Ap
2、ache中的3种运行方式分别是:1.预派生(profork)MPM:此模块在功能上兼容于Apache1.3的运行模型。这种运行方式首先启动一个父进程,然后 创建并启动一定(可配置)数量的子进程监听客户的请求。当监听到客户的服务请求后,子进程就响应此请求。重要的是父进程始终监控子进程,当没有足够的空闲子进程为客户服务时,父进程就会创建并运行新的子进程准备为客户提供服务;如果存在过多的空闲子进程,父进程就会依次终止这些空闲的子进程,直到服务器回到最大空闲子进程(可配置)数量之下。通过始终保持一定数量的空闲子进程来响应客户的请求,服务器可以避免在接收到客户请求时启动新的进程的开销。2.工作者(Wor
3、ker)MPM:此模块是混合使用进程和线程的运行模型。这种运行方式首先启动一个父进程,然后创建并启动一定(可配置)数量的子进程,每个子进程都创建并启动相同数量的线程,由线程监听客户请求,而子进程并不监听客户请求。重要的是父进程始终监近控子进程,当没有足够的空闲线程为客户服务时,父进程就会创建并运行新的子进程,并在子进程中创建与先前子进程创建的相同数量的线程准备为客户提供服务。这种运行方式是以牺牲可靠性和健壮性来换取可扩展性的。3.独立子进程(Perchild)MPM:这是一种运行于类UNIX系统上的运行模式,它也是混合使用进程和线程的运行模型。这种运行模型与工作者MPM类似,只是每个子进程创建
4、的线程数量可以不一致,即每个子进程都可以创建指定数量(可配置)的线程。当服务器上负载增加后,Apache不会创建新的子进程,而是在当前的子进程之一上创建新的线程为客户提供服务。这种运行方式具有最高的可扩展性,但却具有最低的可靠性。3 Apache2.0的模块Apache2.0仍旧采用模块的方式运行。Apache由内核,标准模块,和第三方提供的模块3个层次组成。增加一个模块则会使Apache增加一个功能支持。二,安装启动Apache1 安装:RedHat Linux 9自带了Apache2.0 RPM安装包,位于第1张光盘中。# rpm ivh httpd-2.0.40-21.i386.rpm#
5、 rpm ivh httpd-manual-2.0.40-21.i386.rpm2 启动Apache# service httpd start /httpd为Apache的守护进程。# apachectl configtest /检测配置文件语法的正确性# httpd -t /检测配置文件语法正确性3 查看RedHat Linux 9中Apache的相关信息。# apachectl V /查看编译配置参数# apachectl l /查看已经被编译的模块Compiled in modules:core.c /Apache HTTP服务器核心模块prefork.c /表示当前Apache是以预派
6、生(Profork)运行方式MPM运行的。httpd_core.c/Http认证相关模块。mod_so.c/表示当前的Apache支持Dynamic Shared Objects (DSO),即用户可以不重新编译Apache的情况下使用APache eXtenSion(apxs)编译Apache的第三方模块。三,Redhat Linux 9 中的Apache的配置文件/当服务器响应主机头(header)信息时显示Apache的版本各操作系统名称。ServerTokens OS /设置服务器的根目录 ServerRoot /etc/httpd/设置运行Apache时使用的PidFile路径Pid
7、File run/httpd.pid/若300秒后没有收到或送同任何数所就切断该连接。Timeout 300/保持连接的功能,即客户一次请求只能响应一个文件/建议用户将此参数的值设置为On,即允许使用保持连接功能。KeepAlive Off/在使用保持连接功能时,设置客户一次请求连接能响应文件的最大上限。MaxKeepAliveRequests 100/在使用保持连接功能时,两个相邻的连接的时间间隔超过15秒就切断连接。KeepAliveTimeout 15/设置使用prefork MPM运行方式的参数,此运行方式是RedHat默认的方式StartServers 8 /设置服务器启动时运行的进
8、程数。/Apache在运行时会根据负载的轻重自动调整空闲子进程数目/若存在低于5个空闲进程,就创建一个新的子进程准备为客户提供服务MinSpareServers 5 /若存在高于20个空闲子进程,就创建逐一删除子进程来提高系统性能MaxSpareServers 20 /限制同一时间的连接数不能超过150MaxClients 1500/限制每个了进程在结束处理请求之前能处理的连接衣求为1000MaxRequestsPerChild 1000 /设置以 worker MPM运行方式的参数StartServers 2MaxClients 150MinSpareThreads 25MaxSpareTh
9、reads 75 ThreadsPerChild 25MaxRequestsPerChild 0 / 设置以perchild MPM运行方式的参数。NumServers 5StartThreads 5MinSpareThreads 5MaxSpareThreads 10MaxThreadsPerChild 20MaxRequestsPerChild 0 Listen 80 /设置服务器监听的端口/将 /etc/httpd/conf.d目录下的所有以conf结尾的配置文件包含进来Include conf.d/*.conf /动态加态模块(DSO)LoadModule access_module
10、modules/mod_access.soLoadModule auth_module modules/mod_auth.soLoadModule auth_anon_module modules/mod_auth_anon.soLoadModule auth_dbm_module modules/mod_auth_dbm.soLoadModule auth_digest_module modules/mod_auth_digest.soLoadModule include_module modules/mod_include.soLoadModule log_config_module mo
11、dules/mod_log_config.soLoadModule env_module modules/mod_env.soLoadModule mime_magic_module modules/mod_mime_magic.soLoadModule cern_meta_module modules/mod_cern_meta.soLoadModule expires_module modules/mod_expires.soLoadModule headers_module modules/mod_headers.soLoadModule usertrack_module modules
12、/mod_usertrack.soLoadModule unique_id_module modules/mod_unique_id.soLoadModule setenvif_module modules/mod_setenvif.soLoadModule mime_module modules/mod_mime.soLoadModule dav_module modules/mod_dav.soLoadModule status_module modules/mod_status.soLoadModule autoindex_module modules/mod_autoindex.soL
13、oadModule asis_module modules/mod_asis.soLoadModule info_module modules/mod_info.soLoadModule dav_fs_module modules/mod_dav_fs.soLoadModule vhost_alias_module modules/mod_vhost_alias.soLoadModule negotiation_module modules/mod_negotiation.soLoadModule dir_module modules/mod_dir.soLoadModule imap_mod
14、ule modules/mod_imap.soLoadModule actions_module modules/mod_actions.soLoadModule speling_module modules/mod_speling.soLoadModule userdir_module modules/mod_userdir.soLoadModule alias_module modules/mod_alias.soLoadModule rewrite_module modules/mod_rewrite.soLoadModule proxy_module modules/mod_proxy
15、.soLoadModule proxy_ftp_module modules/mod_proxy_ftp.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_connect_module modules/mod_proxy_connect.so/当使用内置模块prefork.c时动态加载cgi_module ,支持CGILoadModule cgi_module modules/mod_cgi.so/当使用内置模块worker.c时动态加载cgi_module ,支持CGILoadModule cgi
16、d_module modules/mod_cgid.so/设置运行Apache服务器的用户和组。User apacheGroup apache/设置Apache服务器管理员的E-mail地址ServerAdmin rootlocalhost/关闭此选项,当Apache服务器需要指向本身的连接时使用/ServerName:port 作为主机名,例如:80/若打开此选项将使用 port 80作为主机名。UseCanonicalName Off/设置Apache服务器的根文档路径。DocumentRoot /var/www/html/设置Apache服务器根的访问权限 Options FollowS
17、ymLinks /允许符号链接跟随,访问不在本目录下的文件 AllowOverride None /禁止读取.htaccess配置文件的内容/Indexes:当找不到Directoryindex列表中指定的文件就生成当前目录的文件列表。 Options Indexes FollowSymLinks/禁止读取.htaccess配置文件的内容 AllowOverride None/指定先执行允许访问规则,再执行拒绝访问规则。即先允许所有连接,然后不允许受限的/连接访问此目录 Order allow,deny Allow from all /具体的访问规则 Options Indexes /对Apa
18、che服务器根的访问不生成目录列表 ErrorDocument 403 /error/noindex.html /指定错误输出页面 UserDir disable /不允许每用户的服务器配置,即每个本地用户都可以创建自己的WEB。/站点的功能。DirectoryIndex index.html index.html.var /指定主文档AccessFileName .htaccess /指定保护目录配置文件的名称。 /拒绝访问以.ht开头的文件,即保护用户不能访问.htaccess文件的内容。 Order allow,deny Deny from allTypesConfig /etc/mim
19、e.types /指定负责MIME对应格式的配置文件的存放位置DefaultType text/plain若罔闻 /指定MIME文件类型为纯文本或HTML文件/当mod_mime_magic.c模块被加载时,指定Magic信息码配置文件的存放位置 MIMEMagicFile conf/magicHostnameLookups Off /只记录连接Apache服务器的IP地址,而不记录主机名。ErrorLog logs/error_log /指定错误日志存放位置LogLevel warn /定义四种记录日志的格式。LogFormat %h %l %u %t %r %s %b %Refereri
20、%User-Agenti combinedLogFormat %h %l %u %t %r %s %b commonLogFormat %Refereri - %U refererLogFormat %User-agenti agent/指定访问日志的记录格式为combined(混合型),并指定访问日志存放位置CustomLog logs/access_log combined/设置Apache自己产生的页面中使用Apache服务器版本的签名ServerSignature On/设置内容协商目录的访问别名Alias /icons/ /var/www/icons/设置/var/www/icons
21、目录的访问权限/Multi Views使用内容协商功能决定被发送的网页的性质 Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all/设置Apache手册的访问别名Alias /manual /var/www/manual/设置/var/www/manual目录的访问权限 Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all /指定DAV加锁数据库文件的存放位置DA
22、VLockDB /var/lib/dav/lockdb/设置CGI目录的访问别名ScriptAlias /cgi-bin/ /var/www/cgi-bin/由于Red Hat中不使用worker MPM运行方式,所以不用加载mod_cgid.c模块Scriptsock run/httpd.cgid/设置CGI目录的访问权限 AllowOverride None Options None Order allow,deny Allow from all/设置自动生成目录列表的显示方式/FancyIndexing:对每种类型的文件前加上一个小图标以示区别/VersionSort:对同一个软件的多个
23、版本进行排序/NameWidth=*:文件名子段自动适应当前目录下最长文件名。IndexOptions FancyIndexing VersionSort NameWidth=*/当使用indexOptions FancyIndexing之后配置下面参数/用于告知服务器在遇到不同文件类型或扩展名时采用MIME编码格式/辨别文件类型并显示相应的图标AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzipAddIconByType (TXT,/icons/text.gif) text/*AddIconByType (IMG,/i
24、cons/image2.gif) image/*AddIconByType (SND,/icons/sound2.gif) audio/*AddIconByType (VID,/icons/movie.gif) video/*/当使用indexOptions FancyIndexing之后配置下面参数/用于告知服务器在遇到不同文件类型或扩展名时采用指定的格式/并显示对应的图标AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzipAddIcon /icons/binary.gif .bin .exeAddIcon /icon
25、s/binhex.gif .hqxAddIcon /icons/tar.gif .tarAddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .ivAddIcon /icons/compressed.gif .Z .z .tgz .gz .zipAddIcon /icons/a.gif .ps .ai .epsAddIcon /icons/layout.gif .html .shtml .htm .pdfAddIcon /icons/text.gif .txtAddIcon /icons/c.gif .cAddIcon /icons/p.gif .
26、pl .pyAddIcon /icons/f.gif .forAddIcon /icons/dvi.gif .dviAddIcon /icons/uuencoded.gif .uuAddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tclAddIcon /icons/tex.gif .texAddIcon /icons/bomb.gif coreAddIcon /icons/back.gif .AddIcon /icons/hand.right.gif READMEAddIcon /icons/folder.gif DIRECTORYAdd
27、Icon /icons/blank.gif BLANKICON/当使用indexOptions FancyIndexing之后,县无法识别文件类型时,显示此处定义图标DefaultIcon /icons/unknown.gif/当服务器自动列出目录列表时,在所生成的页面之后显示README.html的内容ReadmeName README.html/当服务器自动列出目录列表时,在所生成的页面之后显示HEADER.html的内容。HeaderName HEADER.html/设置在线浏览用户可以实时解压缩.z .gz .tgz类型的文件AddEncoding x-compress ZAddEnc
28、oding x-gzip gz tgz/设置网页内容的语言种类(浏览器要启动内容协商),对中文网页,此项无实际意义AddLanguage da .dkAddLanguage nl .nlAddLanguage en .enAddLanguage et .etAddLanguage fr .frAddLanguage de .deAddLanguage he .heAddLanguage el .elAddLanguage it .itAddLanguage ja .jaAddLanguage pl .poAddLanguage kr .krAddLanguage pt .ptAddLanguage nn .nnAddLanguage no .noAddLanguage pt-br .pt-brAddLanguage ltz .ltzAddLanguage ca .caAddLanguage es .esAddLanguage sv .seAddLanguage cz .czAddLanguage ru .ruAddLanguage tw .twAddLanguage zh-tw .twAddLanguage hr .hr/当启用内容协商时,设置语言的先后顺序LanguagePriority en da nl et fr de el
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1