繁体版 软件分类   最新更新   精品推荐  国产软件 国外软件  汉化软件  注册破解  影视娱乐  论坛 虚拟主机
设为首页
广告联系
加入收藏
·业界资讯 ·工具软件 ·图形图像 ·操作系统 ·网络冲浪 ·办公软件 ·媒体动画 ·精文荟萃 ·认证考试 ·网页设计 ·技术开发 ·专 栏
  飞翔下载网络学院 - Web服务器 - 文章正文
 欢迎光临飞翔下载网络学院。
最新热点
 普通文章 Apache服务器配置技..
 普通文章 apache主配置文件配..
 普通文章 实战 J2EE 开发购物..
 普通文章 推荐一个web服务器
 普通文章 个人Internet网站..
 普通文章 IIS6.0下ASP的新..
 普通文章 IIS6.0下ASP的新..
 普通文章 IIS6.0下ASP的新..
 普通文章 IIS6.0下ASP的新..
 普通文章 IIS6.0下ASP的新..
相关文章
 ·暂无
推荐文章
 ·暂无
apache主配置文件配置解说
发布者:[飞翔] 浏览:[ ] 评论:[0] 


apache主配置文件配置解说
Apache为网络管理员提供了丰富多彩的功能,包括目录索引、目录别名、内容协商、可配置的HTTP错误报告、CGI程序的SetUID执行、子进程资源管理、服务器端图象映射、重写URL、URL拼写检查以及联机手册man等。也就是说,如果您在Linux Server上成功安装配置了Apache之后,您的计算机也将随着Apache的生效而摇身一变,成为一台名副其实的Web Server,这种变化的确是激动人心的。

在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_module modules/mod_log_config.so
LoadModule agent_log_module  modules/mod_log_agent.so
LoadModule referer_log_module modules/mod_log_referer.so
LoadModule mime_module    modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule status_module   modules/mod_status.so
LoadModule info_module    modules/mod_info.so
LoadModule includes_module  modules/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_module    modules/mod_asis.so
LoadModule imap_module    modules/mod_imap.so
LoadModule action_module   modules/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_module   modules/mod_access.so
LoadModule auth_module    modules/mod_auth.so
LoadModule anon_auth_module  modules/mod_auth_anon.so
LoadModule db_auth_module   modules/mod_auth_db.so
LoadModule digest_module   modules/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_module  modules/mod_setenvif.so
LoadModule perl_module    modules/libperl.so
LoadModule php3_module    modules/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 root@weboa.com.cn
   #设置Web管理员的邮件地址
ServerName WebOA
   #定义客户端从服务器读取数据时返回给客户端的主机名,其缺省值
   是localhost,第一次安装Linux的时候经常这里出错。
DocumentRoot "/home/weboa/jakarta-tomcat/webapps/weboa"
   #设置所有Apache文档的根目录,比如说,用户对
   http://www.weboa.com.cn/index.html?..肭螅珹pache对它
   的响应是/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 root@weboa.com.cn #网管邮件地址
DocumentRoot /home/weboa/webadmin/html/ #服务器页面目录
ServerName webadmin.weboa.com.cn #服务器名称
需要在/var/named/name2ip.conf中添加的内容:
webadmin   IN   A   192.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

假设你有一些敏感的信息要放在Intranet/Internet上,你首先可能会想到自己开发一个用户身份认证的系统来保护你的Web页面。其实Apache本身就自带了限制用户访问Web页面的机制,实现起来也不复杂。

本文介绍在Linux+Apache上的实现方法:

1、修改http.conf
  假设你想控制/usr/local/apache/htdocs下各目录的不同访问权限,你可以在与之间加入一行:
AllowOverride All
  意思是在/usr/local/apache/htdocs下不同目录的访问权限由该目录下的.htaccess文件来控制,而且不同目录的权限策略可互相覆盖。

2、编辑你想要控制的目录下的.htaccess文件
  假设你的phpmyadmin目录在/usr/local/apache/htdocs下,你可以这样在phpmyadmin目录下创建一个.htaccess文件,内容如下:

AuthUserFile /usr/local/apache/pass/pwdPhp
AuthType Basic
AuthName "Database Security Zone"
ErrorDocument 401 /catchErrors/err_401.html

require valid-user


该文件说明了几个问题:
(1) 用户信息存放在/usr/local/apache/pass/pwdPhp中.
(2) 认证类型为基本型(此外还有一些其他的加密类型).
(3) ErrorDocument 所指向的html文件.
(4) 认证方式:用户认证(valid-user)或组认证(valid-group).

3. 生成用户密码文件
有一个用户密码生成程序:htpasswd(在/usr/local/apache/bin下), 它可以加入用户密码信息到指定的文件中,如/usr/local/apache/pass/pwdPhp. 我的用户密码文件内容如下:

admin:a0Hplbj33QjV2
guest:R0BYSO383QjVT

4. 重起apache deamon
/usr/local/apche/bin/apachectl restart

5. 测试
用IE浏览受保护的页面,如http://ip/phpmyadmin/ (可能需要refresh几次才能凑效),这时应该出现一个身份认证窗口,你需要输入用户名(admin / guest) 和密码(******)才能访问这个页面。

[ ] 评论 】【 推荐
评一评
正在读取…
笔名:
评论:
[评论将在5分钟内被审核,请耐心等待]
【注】 发表评论必需遵守以下条例:
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款

首页- 广告联系 - VIP说明 - 本站声明 - 下载帮助 - 发布软件 - 关于本站

广告联系:QQ:160845 All rights reserved.2004