热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

Linux系统中Apache服务器的配置方法

Apache配置文件详解httpd的配置文件是:/etc/httpd/conf/httpd.conf【//查看配置文件#grep-v#/etc/httpd/conf/httpd.conf//当服务器响应主机头(header)信息时显示Apache的版本和操作系统名称ServerTokensOS//设置服务器的根目录Se

Apache配置文件详解

 

httpd 的配置文件是:

/etc/httpd/conf/httpd.conf

//查看配置文件

grep -v "#" /etc/httpd/conf/httpd.conf

//当服务器响应主机头(header)信息时显示Apache 的版本和操作系统名称

ServerTokens OS

//设置服务器的根目录

ServerRoot "/etc/httpd"

//设置运行Apache 时使用的PidFile 的路径

PidFile run/httpd.pid

//若300 秒后没有收到或送出任何数据就切断该连接

Timeout 300

//不使用保持连接的功能,即客户一次请求连接只能响应一个文件

/建议用户将此参数的值设置为On,即允许使用保持连接的功能

KeepAlive Off

//在使用保持连接功能时,设置客户一次请求连接能响应文件的最大上限

MaxKeepAliveRequests 100

//在使用保持连接功能时,两个相邻的连接的时间间隔超过15 秒,就切断连接

KeepAliveTimeout 15

//设置使用prefork MPM 运行方式的参数,此运行方式是Red Hat 默认的方式

 

//设置服务器启动时运行的进程数

StartServers 8

//Apache 在运行时会根据负载的轻重自动调整空闲子进程的数目,

//若存在低于5 个空闲子进程,就创建一个新的子进程准备为客户提供服务

MinSpareServers 5

//若存在高于20 个空闲子进程,就创建逐一删除子进程来提高系统性能MaxSpareServers 20

//限制同一时间的连接数不能超过150

MaxClients 150

//限制每个子进程在结束处理请求之前能处理的连接请求为1000

MaxRequestsPerChild 1000

 

//设置使用worker MPM 运行方式的参数

 

…………

 

//设置使用perchild MPM 运行方式的参数

 

…………

 

//设置服务器的监听端口

Listen 80

//将/etc/httpd/conf.d 目录下的所有以conf 结尾的配置文件包含进来

Include conf.d/*.conf

//动态加载模块(DSO)

LoadModule access_module modules/mod_access.so

LoadModule auth_module modules/mod_auth.so

………………………………

LoadModule proxy_connect_module modules/mod_proxy_connect.so

//当使用内置模块prefork.c 时动态加载cgi_module

 

LoadModule cgi_module modules/mod_cgi.so

 

//当使用内置模块worker.c 时动态加载cgid_module

 

LoadModule cgid_module modules/mod_cgid.so

 

//设置运行Apache 服务器的用户和组

User apache

Group apache

//设置Apache 服务器管理员的E-mail 地址

ServerAdmin root@localhost

//关闭此选项,当Apache 服务器需要指向本身的连接时使用

//ServerName:Port 作为主机名,例如www.jamond.net:80

//若打开此选项将使用www.jamond.net port 80 作为主机名

UseCanonicalName Off

//设置根文档路径

DocumentRoot "/var/www/html"

//设置Apache 服务器根的访问权限

 

//允许符号链接跟随,访问不在本目录下的文件

Options FollowSymLinks

//禁止读取.htaccess 配置文件的内容

AllowOverride None

 

//设置根文档目录的访问权限

 

//Indexes:当在目录中找不到DirectoryIndex 列表中指定的文件

// 就生成当前目录的文件列表

//FollowSymLinks:允许符号链接跟随,访问不在本目录下的文件

Options Indexes FollowSymLinks

//禁止读取.htaccess 配置文件的内容

AllowOverride None

//指定先执行Allow(允许)访问规则,再执行Deny(拒绝)访问规则

Order allow,deny

//设置Allow(允许)访问规则,允许所有连接

Allow from all

 

//对Apache 服务器根的访问不生成目录列表,同时指定错误输出页面

 

Options -Indexes

ErrorDocument 403 /error/noindex.html

 

//不允许每用户的服务器配置

 

UserDir disable

 

//当访问服务器时,依次查找页面index.html、index.html.var

DirectoryIndex index.html index.html.var

//指定保护目录配置文件的名称

AccessFileName .htaccess

//拒绝访问以.ht 开头的文件,即保证.htaccess 不被访问

 

Order allow,deny

Deny from all

 

//指定负责处理MIME 对应格式的配置文件的存放位置

TypesConfig /etc/mime.types

//指定默认的MIME 文件类型为纯文本或HTML 文件

DefaultType text/plain

//当mod_mime_magic.c 模块被加载时,指定Magic 信息码配置文件的存放位置

 

MIMEMagicFile conf/magic

 

//只记录连接Apache 服务器的IP 地址,而不记录主机名

HostnameLookups Off

//指定错误日志存放位置

ErrorLog logs/error_log

//指定记录的错误信息的详细等级为warn 级别

LogLevel warn

//定义四种记录日志的格式

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""

combined

LogFormat "%h %l %u %t \"%r\" %>s %b" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent

//指定访问日志的记录格式为combined(混合型),并指定访问日志存放位置

CustomLog logs/access_log combined

//设置Apache 自己产生的页面中使用Apache 服务器版本的签名

ServerSignature On

//设置内容协商目录的访问别名

Alias /icons/ "/var/www/icons/"

//设置/var/www/icons 目录的访问权限

 

// MultiViews:使用内容协商功能决定被发送的网页的性质

Options Indexes MultiViews

AllowOverride None

Order allow,deny

Allow from all

 

//设置Apche 手册的访问别名

Alias /manual "/var/www/manual"

//设置/var/www/manual 目录的访问权限

 

Options Indexes FollowSymLinks MultiViews

AllowOverride None

Order allow,deny

Allow from all

 

//指定DAV 加锁数据库文件的存放位置

 

DAVLockDB /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:对同一个软件的多个版本进行排序

// NameWidth=*:文件名子段自动适应当前目录下最长文件名

IndexOptions FancyIndexing VersionSort NameWidth=*

//当使用IndexOptions FancyIndexing 之后,配置下面的参数,

//用于告知服务器在遇到不同的文件类型或扩展名时采用MIME 编码格式

//辨别文件类型并显示相应的图标

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/*

//当使用IndexOptions FancyIndexing 之后,配置下面的参数,

//用于告知服务器在遇到不同的文件类型或扩展名时采用所指定的格式

//并显示所对应的图标

AddIcon /icons/binary.gif .bin .exe

………………

AddIcon /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 Z

AddEncoding x-gzip gz tgz

//设置网页内容的语言种类(浏览器要启用内容协商)

//对中文网页,此项无实际意义

AddLanguage da .dk

…………

AddLanguage hr .hr

//当启用内容协商时,设置语言的先后顺序

LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ltz ca es sv

tw

// Prefer:当有多种语言可以匹配时,使用LanguagePriority 列表的第1 

// Fallback:当没有语言可以匹配时,使用LanguagePriority 列表的第1 

ForceLanguagePriority Prefer Fallback

//设置默认字符集

AddDefaultCharset ISO-8859-1

//设置各种字符集

AddCharset ISO-8859-1 .iso8859-1 .latin1

……………………

AddCharset shift_jis .sjis

//添加新的MIME 类型(避免用户编辑/etc/mime.types)

AddType application/x-tar .tgz

//设置Apache 对某些扩展名的处理方式

AddHandler imap-file map

AddHandler type-map var

//使用过滤器执行SSI

AddOutputFilter INCLUDES .shtml

//设置错误页面目录的别名

Alias /error/ "/var/www/error/"

//设置/var/www/error 目录的访问权限

 

 

 

AllowOverride None

Options IncludesNoExec

AddOutputFilter Includes html

AddHandler type-map var

Order allow,deny

Allow from all

LanguagePriority en es de fr

ForceLanguagePriority Prefer Fallback

 

//设置错误输出页面

ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var

ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var

………………

ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var

 

 

//设置浏览器匹配

BrowserMatch "Mozilla/2" nokeepalive

BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0

BrowserMatch "RealPlayer 4\.0" force-response-1.0

BrowserMatch "Java/1\.0" force-response-1.0

BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider"

redirect-carefully

BrowserMatch "^WebDrive" redirect-carefully

#

 

 介绍Apache服务器文件和目录:

WEB站点目录                                                                           描述

/var/www                           Apache WEB站点文件的目录

/var/www/html                 WEB站点的WEB文件

/var/www/cgi-bin             CGI程序文件

/var/www/html/manual   Apache WEB服务器手册

/var/www/htmll/usage    webalizer程序文件

 

配置文件

/etc/httpd/conf     基于目录的配置文件,.htaccess文件包含对它所在目录中文件的访问控制指令

/etc/httpd/conf/httpd.conf   Apache WEB服务器配置文件目录

/etc/httpd/conf/srm.conf       主要的Apache WEB服务器配置文件

/etc/httpd/conf/access.conf   用来处理文档规范,配置文件类型昨未知的老式配置文件

 

启动脚本

/etc/rc.d/init.d/httpd        WEB服务器守护进程的启动脚本

/etc/rc.d/rc3.d/S85httpd   将运行级目录(/etc/rc3.d)连接到目录/etc/rc.d/init.d中的启动脚本

 

应用文件

/usr/sbin      Apache WEB服务器程序文件和应用程序的位置

/usr/doc/   Apache WEB服务器文档

/var/log/http  Apache 日志文件的位置

 


推荐阅读
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 在使用 Nginx 作为服务器时,发现 Chrome 能正确从缓存中读取 CSS 和 JS 文件,而 Firefox 却无法有效利用缓存,导致加载速度显著变慢。 ... [详细]
  • 本文详细介绍了在 CentOS 系统中如何创建和管理 SWAP 分区,包括临时创建交换文件、永久性增加交换空间的方法,以及如何手动释放内存缓存。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 在尝试通过自定义端口部署Spring Cloud Eureka时遇到了连接失败的问题。本文详细描述了问题的现象,并提供了有效的解决方案,以帮助遇到类似情况的开发者。 ... [详细]
author-avatar
伸手以后
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有