apache 配置文件解说

在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

   #设置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中添加的内容:

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

(作者:汤海京)

(0)

相关推荐

  • apache .htaccess文件详解和配置技巧总结

    一..htaccess的基本作用 .htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令.       .htaccess主要的作用有:URL重写.自定义错误页面.MIME类型配置以及访问权限控制等.主要体现在伪静态的应用.图片防盗链.自定义404错误页面.阻止/允许特定IP/IP段.目录浏览与主页.禁止访问指定文件类型.文件密码保护等.       .htaccess的用途范围主要针对当前目录. 二.启用.htaccess的配置启用.htaccess,需要修改http

  • 修改apache配置文件去除thinkphp url中的index.php

    例如你的原路径是 http://localhost/test/index.php/index/add那么现在的地址是 http://localhost/test/index/add如何去掉index.php呢? 1.httpd.conf配置文件中加载了mod_rewrite.so模块  //在APACHE里面去配置 复制代码 代码如下: #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉 2.AllowOverride None 讲

  • 让Apache支持shtml实现include文件解析的配置方法

    1. 确认加载include.so模块,将注释去掉: LoadModule include_module libexec/apache2/mod_include.so 2. AddType部分去掉这两段注释: AddType text/html .shtml AddOutputFilter INCLUDES .shtml 3. Directory目录权限里面找到 Options Indexes FollowSymLinks 增加Includes修改为: Options Indexes Follo

  • Apache配置文件中的deny与allow小结

    今天在公司配置Zend本地Apache环境的时候,发现在zend.conf中的权限控制中的几段句子,如下所示: 复制代码 代码如下: <Location /server-status>      SetHandler server-status       Order deny,allow       Deny from all       Allow from 127.0.0.1   </Location> 自己在配置虚拟主机的时候需要配置VirtualHost, 复制代码 代码

  • Apache服务器主配置文件httpd.conf详解

    apache 2.2 # This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See <URL:http://httpd.apache.org/docs/2.2/> for detailed information. # In particular, see # <URL:

  • APACHE 配置文件中文版 httpd.conf FOR Apache 2.2.13

    # # This is the main Apache HTTP server configuration file. It contains the # configuration directives that give the server its instructions. # See <URL:http://httpd.apache.org/docs/2.2/> for detailed information. # In particular, see # <URL:http

  • Apache服务的主要目录和配置文件详解

    一.Apache 主要配置文件注释 Apache的主配置文件:/etc/httpd/conf/httpd.conf 默认站点主目录:/var/www/html/ Apache服务器的配置信息全部存储在主配置文件/etc/httpd/conf/httpd.conf中,这个文件中的内容非常多,用wc命令统计一共有1009行,其中大部分是以#开头的注释行. ServerTokens OS 在出现错误页的时候是否显示服务器操作系统的名称,ServerTokens Prod为不显示 ServerRoot

  • apache 配置文件解说

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

  • MAC下通过改apache配置文件切换php多版本的方法

    前言 前段时间,在自己的电脑上升级了php,php7.0虽然有部分更新,速度也提升了不少,但最近在做微信开发时,发现很多引擎不支持php7,于是想能不能安装两个版本进行切换,百度了很多方法发现不行.于是自己着手研究,发现在终端下运行"php -v",php的版本居然还是mac os自带的php版本,于是想到了可以改apache配置文件来切换php版本. 方法如下: 1.在/usr/local/php5目录下找到entropy-php.conf,用文本编辑器打开,将 LoadModule

  • 深入apache配置文件httpd.conf的部分参数说明

    <Directory>...</Directory> -- 设定指定目录的访问权限<Files>...</Files> -- 设置应用于指定文件的指令示例:拒绝访问以'-ht'开头的文件<Files ~"^\.ht">Order allow,denyDeny from all</Files><Location>...</Location> -- 设置应用于特定URL的指令,容器包含只应用于特

  • Apache+php+mysql在windows下的安装与配置(图文)第1/2页

    先准备好软件: 一.安装Apache,配置成功一个普通网站服务器 运行下载好的"apache_2.0.55-win32-x86-no_ssl.msi",出现如下界面: screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in

  • Apache+php+mysql在windows下的安装与配置图解(最新版)

    先准备好软件: Apache官方下载地址:apache_2.0.55-win32-x86-no_ssl.msi,更多版本在这里: php官方下载地址:php-5.0.5-Win32.zip,更多镜像下载地址,更多版本下载: mysql官方下载地址:mysql-4.1.14-win32.zip,更多镜像下载地址,更多版本下载. 一.安装Apache,配置成功一个普通网站服务器 运行下载好的"apache_2.0.55-win32-x86-no_ssl.msi",出现如下界面: 出现Apa

  • 解析centos中Apache、php、mysql 默认安装路径

    apache:如果采用RPM包安装,安装路径应在 /etc/httpd目录下apache配置文件:/etc/httpd/conf/httpd.confApache模块路径:/usr/sbin/apachectlweb目录:/var/www/html如果采用源代码安装,一般默认安装在/usr/local/apache2目录下 php:如果采用RPM包安装,安装路径应在 /etc/目录下php的配置文件:/etc/php.ini如果采用源代码安装,一般默认安装在/usr/local/lib目录下ph

  • Windows下使用apache模块实现合并多个js、css提高网页加载速度

    现在的网站表现力越来越丰富,页面加载的js和css自然也越来越多.当网站页面上的js和css太多,浏览器打开页面的速度就会很慢,明显降低了用户的体验.使用mod_concatx, 可以合并多个文件在一个http响应报文中,可以有效提高js/css的加载速度. 示例效果如下: mod_concatx模块是在mod_concat基础上修改的,感谢他们的工作. 原有的mod_concat模块有很大的参考价值,但实际作用不大. 该模块存在以下三个问题: 1.每次都会重新向客户端发数据,没有合理利用浏览器

随机推荐