apache 配置文件解说

时间:2023-01-19 03:35:59 

 
在Internet时代,外部主页的发布已经成为树立公司形象的一个重要手段,而内部主页也成为公司管理的主要方式。但是,要想实现这些功能,首先应该把我们的Linux Server配置成为一台强大的Web Server。本章将详细介绍如何配置Apache服务器。希望各位同仁能够通过阅读本片文章达到理论实践双丰收的目的,在很短的时间里迅速成为一名出色的网络管理员。 
1.2 所需资源 
1.2.1 所需包 
RedHat6.2 服务器安装 
1.2.2 所需配置文件 
/etc/httpd/conf/httpd.conf 系统自带,管理员配置 
/etc/httpd/conf/access.conf 系统自带,不需要修改 
/etc/httpd/conf/srm.conf 系统自带,不需要修改 

1.3 配置方案 
/etc/httpd/conf/httpd.conf 
说明:apache主配置文件 
源文件: 
ServerType standalone 
#定义WebServer的启动方式为standalone,以增强其对大量访问的及时响应性 
ServerRoot "/etc/httpd" 
#指定包含httpd服务器文件的目录 
LockFile /var/lock/httpd.lock 
PidFile /var/run/httpd.pid 
ScoreBoardFile /var/run/httpd.scoreboard 
Timeout 300 
#响应超时量,单位为秒 
KeepAlive On 
#允许用户建立永久连接 
MaxKeepAliveRequests 100 
KeepAliveTimeout 15 
MinSpareServers 5 
#要保留的空闲服务器进程的最小值 
MaxSpareServers 20 
#要保留的空闲服务器进程的最大值 
StartServers 8 
#系统启动时的守护进程数 
MaxClients 150 
#所能提供服务的最大客户端编号,大于它的部分被放入请求队列 
MaxRequestsPerChild 100 
LoadModule vhost_alias_module modules/mod_vhost_alias.so 
LoadModule env_module modules/mod_env.so 
LoadModule config_log_modulemodules/mod_log_config.so 
LoadModule agent_log_module modules/mod_log_agent.so 
LoadModule referer_log_module modules/mod_log_referer.so 
LoadModule mime_modulemodules/mod_mime.so 
LoadModule negotiation_module modules/mod_negotiation.so 
LoadModule status_modulemodules/mod_status.so 
LoadModule info_modulemodules/mod_info.so 
LoadModule includes_modulemodules/mod_include.so 
LoadModule autoindex_module modules/mod_autoindex.so 
LoadModule dir_module modules/mod_dir.so 
LoadModule cgi_module modules/mod_cgi.so 
LoadModule asis_modulemodules/mod_asis.so 
LoadModule imap_modulemodules/mod_imap.so 
LoadModule action_modulemodules/mod_actions.so 
LoadModule userdir_module modules/mod_userdir.so 
LoadModule alias_module modules/mod_alias.so 
LoadModule rewrite_module modules/mod_rewrite.so 
LoadModule access_modulemodules/mod_access.so 
LoadModule auth_modulemodules/mod_auth.so 
LoadModule anon_auth_module modules/mod_auth_anon.so 
LoadModule db_auth_module modules/mod_auth_db.so 
LoadModule digest_modulemodules/mod_digest.so 
LoadModule proxy_module modules/libproxy.so 
LoadModule expires_module modules/mod_expires.so 
LoadModule headers_module modules/mod_headers.so 
LoadModule usertrack_module modules/mod_usertrack.so 
LoadModule setenvif_modulemodules/mod_setenvif.so 
LoadModule perl_modulemodules/libperl.so 
LoadModule php3_modulemodules/libphp3.so 
ClearModuleList 
AddModule mod_vhost_alias.c 
AddModule mod_env.c 
AddModule mod_log_config.c 
AddModule mod_log_agent.c 
AddModule mod_log_referer.c 
AddModule mod_mime.c 
AddModule mod_negotiation.c 
AddModule mod_status.c 
AddModule mod_info.c 
AddModule mod_include.c 
AddModule mod_autoindex.c 
AddModule mod_dir.c 
AddModule mod_cgi.c 
AddModule mod_asis.c 
AddModule mod_imap.c 
AddModule mod_actions.c 
#AddModule mod_speling.c 
AddModule mod_userdir.c 
AddModule mod_alias.c 
AddModule mod_rewrite.c 
AddModule mod_access.c 
AddModule mod_auth.c 
AddModule mod_auth_anon.c 
AddModule mod_auth_db.c 
AddModule mod_digest.c 
AddModule mod_proxy.c 
AddModule mod_expires.c 
AddModule mod_headers.c 
AddModule mod_usertrack.c 
AddModule mod_so.c 
AddModule mod_setenvif.c 
AddModule mod_perl.c 
AddModule mod_php3.c 
Port 80 
#定义服务器所使用的TCP的端口号 
User nobody 
Group nobody 
#以上两行是分配给httpd的新用户的文件权限,出于安全的考虑把 
它们的权限设置成为最低。 
ServerAdmin 
#设置Web管理员的邮件地址 
ServerName WebOA 
#定义客户端从服务器读取数据时返回给客户端的主机名,其缺省值 
是localhost,第一次安装Linux的时候经常这里出错。 
DocumentRoot "/home/weboa/jakarta-tomcat/webapps/weboa" 
#设置所有Apache文档的根目录,比如说,用户对 
的访问请求,Apache对它 
的响应是/home/weboa/jakarta-tomcat/webapps/weboa/index.html 
Options FollowSymLinks 
AllowOverride None 

Options Indexes Includes FollowSymLinks 
AllowOverride None 
Order allow,deny 
Allow from all# 允许所有人访问 
UserDir public_html 
DirectoryIndex index.html index.htm index.shtml index.cgi 
#设置多种成功访问主页的方式,为的是提高系统的容错性 
AccessFileName .htaccess 
Order allow,deny 
Deny from all 
UseCanonicalName On 
TypesConfig /etc/mime.types 
DefaultType text/plain 
MIMEMagicFile share/magic 
HostnameLookups Off 
ErrorLog /usr/httpd/log/error_log 
LogLevel warn 
#定义那些错误类型被记录到错误日志中 
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined 
#所有的LogFormat都用来定义日志中的条目 
LogFormat "%h %l %u %t \"%r\" %>s %b" common 
LogFormat "%{Referer}i -> %U" referer 
LogFormat "%{User-agent}i" agent 
CustomLog /usr/httpd/log/access_log common 
ServerSignature On 
Alias /icons/ "/home/httpd/icons/" 
#定义目录与系统目录的对应关系 
Options Indexes MultiViews 
AllowOverride None 
Order allow,deny 
Allow from all 
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" 
#定义CGI目录 
AllowOverride None 
Options ExecCGI 
Order allow,deny 
Allow from all 
IndexOptions FancyIndexing 
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/back.gif .. 
AddIcon /icons/hand.right.gif README 
AddIcon /icons/folder.gif ^^DIRECTORY^^ 
AddIcon /icons/blank.gif ^^BLANKICON^^ 
DefaultIcon /icons/unknown.gif 
ReadmeName README 
HeaderName HEADER 
AddEncoding x-compress Z 
AddEncoding x-gzip gz tgz 
AddLanguage en .en 
AddLanguage fr .fr 
AddLanguage de .de 
AddLanguage da .da 
AddLanguage el .el 
AddLanguage it .it 
LanguagePriority en fr de 
AddType application/x-httpd-php3 .php3 
AddType application/x-httpd-php3-source .phps 

AddType application/x-httpd-php .phtml 
AddType application/x-tar .tgz 
AddType text/html .shtml 
AddHandler server-parsed .shtml 
AddHandler imap-file map 
BrowserMatch "RealPlayer 4\.0" force-response-1.0 
BrowserMatch "Java/1\.0" force-response-1.0 
BrowserMatch "JDK/1\.0" force-response-1.0 
Alias /perl/ /home/httpd/perl/ 
SetHandler perl-script 
PerlHandler Apache::Registry 
Options +ExecCGI 

Alias /doc/ /usr/doc/ 
order deny,allow 
deny from all 
allow from localhost 
Options Indexes FollowSymLinks 
include /etc/httpd/conf/tomcat-apache.conf 
Alias /netcard "/home/weboa/jakarta-tomcat/webapps/weboa/net_card" 
Options Indexes FollowSymLinks 
allow from all 
CacheSize 5 
#定义缓存区大小,以KB为单位。可以根据需要和硬盘空间大小进行设置 
CacheGcInterval 4 
#每隔4小时检查缓存区,如果已经超过CacheSize就删除文件 
CacheMaxExpire 24 
#HTTP文件最多被保持24小时 
CacheLastModifiedFactor 0.1 
#定义HTTP文件失效期,缺省是0.1 ,意思是说失效期=离最近一次修改的时间X,比如离最近一次修改的时间是5小时,那么失效期就是5X0.1=0.5小时 
CacheDefaultExpire 1 
#这一指令提供一个缺省的时间(小时)来销毁缓存的文件,这些文件的最后更改时间不详。CacheMaxExpire 命令不覆盖这一设置 
## 以下是如何对一个目录进行登陆控制的方法 ## 在/etc/httpd/conf/httpd.conf中添加以下内容: 
Alias /weboa/ "/home/weboa/" 
Options Indexes MultiViews 
AllowOverride authconfig 
Order allow,deny 
Allow from all 
在/home/weboa目录下建立.htaccess文件 
authname "shared files" 
authtype basic 
authuserfile /etc/httpd/conf/passwd 
require valid-user 
在/etc/httpd/conf目录下执行命令生成认证文件 
htpasswd -c thj thj #创建认证文件和第一个名和密码 
htpasswd weboa weboa #添加其他用户名和密码 

### 以下是做的实现方法 ### 
需要在/etc/httpd/conf/httpd.conf中添加下列内容: 
Alias /webadmin/ "/home/weboa/webadmin/html/" 
Options Indexes MultiViews 
AllowOverride None 
Order allow,deny 
Allow from all 
NameVirtualHost 192.168.0.1 #虚拟域名的DNS服务器 
ServerAdmin #网管邮件地址 
DocumentRoot /home/weboa/webadmin/html/ #服务器页面目录 
ServerName webadmin.weboa.com.cn #服务器名称 
需要在/var/named/name2ip.conf中添加的内容: 
webadminINA192.168.0.1 

1.4 测试及管理办法 
1.4.1 测试方法 
每当管理员更改了Apache的设置之后,都应执行 /etc/rc.d/init.d/httpd restart使得更改生效。 
1.4.2 管理方法 
Apache提供大量的日志文件,当Apache出错的时候,管理员可以根据htppd.conf中的ErrorLog定义的路径来诊断。具体方法是: 
tail -f /var/log/httpd/apache/error_log 
(作者:汤海京)

标签:apache,配置文件
0
投稿

猜你喜欢

  • 就像谈恋爱结婚样 对关键词也要非诚勿扰

    2009-01-03 15:18:00
  • 了解WordPress密码算法规则 让整合更简单

    2010-03-22 09:36:00
  • 教你使用Jenkins集成Harbor自动发布镜像

    2023-10-28 02:32:24
  • vmware 装机报错VMware Workstation 未能启动 VMware Authorization Service

    2021-01-25 02:18:13
  • linux下vsftpd的安装及配置使用详细步骤(推荐)

    2023-11-02 17:02:57
  • DNS的来由

    2010-01-28 19:25:00
  • WordPress添加评论链接跳转

    2011-09-19 13:01:12
  • 亲手关闭自己论坛 泣血奉献一些心得经验

    2008-12-02 18:05:00
  • Google推介的计划政策

    2007-10-23 14:56:00
  • 站长购买网站需认真考虑的十六条建议

    2008-05-29 12:30:00
  • Windows 2000活动目录的安装与配置

    2010-05-18 18:30:00
  • phpcms实现站内搜索自动对应频道的方法

    2009-02-18 19:26:00
  • 愚人节看恶作剧的十大去处:Google居首

    2008-04-04 16:56:00
  • 什么是Linux软链接和Linux硬链接

    2023-10-10 06:39:39
  • Visual Studio Code(vscode) git的使用教程

    2021-09-30 05:34:15
  • 站长请注意友情链接中的伎俩

    2007-09-30 12:45:00
  • xampp apache启动失效问题的解决方法

    2023-10-05 17:54:16
  • 站长搜索管理必备:10个SEO常用查询指令

    2009-03-10 10:36:00
  • 网站统计和adsense网络广告术语

    2008-01-02 19:22:00
  • virtualbox 中的linux 共享文件的方法

    2023-06-10 10:57:22
  • asp之家 网站运营 m.aspxhome.com