Apache2 httpd.conf 中文版

发表于 5年以前  | 总阅读数:2674 次

Apache2 httpd.conf 中文版

基于 NCSA 服务的配置文件。

这是Apache服务器主要配置文件。

它包含服务器的影响服务器运行的配置指令。

参见<URL:http://httpd.ache.org/doc-2.0/>以取得关于这些指令的详细信息

不要只是简单的阅读这些指令信息而不去理解它。

这里只是做了简单的说明,如果你没有参考在线文件,你就会被警告。

这些配置指令被分为下面三个部分:

1. 控制整个Apache服务器行为的部分(即全局环境变量)

2. 定义主要或者默认服务参数的指令,也为所有虚拟主机提供默认的设置参数

3. 虚拟主机的设置参数

配置和日志文件名:如果你指定的文件名以"/"开始(win32下以"dirver:/"),

服务器将使用绝对路径,如果文件名不是以"/"开始的,那么它将把ServerRoot

的值附加在文件名的前面,例如,对"logs/foo.log",如果ServerRoot的值

为"/usr/local/apache2",则该文件应为"/usr/local/apache2/logs/foo.log"

第一区:全局环境参数

这里设置的参数将影响整个Apache服务器的行为;

例如Apache能够处理的并发请求的数量等。

ServerRoot:指出服务器保存其配置、出错和日志文件等的根目录。

注意!如果你想要将它指定为NFS或其它网络上的位置,

请一定要去阅读与LockFile有关的文档(可能在

<URL:http://httpd.apache.org/docs-2.0/mod/mpm_common.html#lockfile>)。

这将会使你自己也能解决很多问题。

路径的结尾不要添加斜线。

ServerRoot "/usr/loacl/apache2"

串行访问的锁文件必须保存在本地磁盘上

<IfModule !mpm_winnt.c>
<IfModule !mpm_neware.c>

LockFile logs/accept.lock

ScoreBoardFile:用来保存内部服务进程信息的文件。

如果未指明(默认),记分板(scoreboard)将被保存在一个匿名的共享内存段中,

并且它不能被第三方软件所使用。

如果指定了,要确保不能使用两个Apache使用同一个记分板文件,

这个记分板文件必须保存在本地磁盘上。

<IfModule !mpm_netware.c>
<IfModule !perchild.c>

ScoreBoardFile logs/apache_runtime_status

PidFile:记录服务器启动进程号的文件。

<IfModule !mpm_neware.c>
PidFile logs/httpd.pid

Timeout:接收和发送前超时秒数

Timeout 300

KeepAlive:是否允许稳固的连接(每个连接有多个请求),

设为"Off"则停用。

KeepAlive On

MaxKeepAliveRequests:在稳固连接期间允许的最大请求数,

设为0表示无限制接入。

我们推荐你将其设为一个较大的值,以便提高性能

MaxKeepAliveRequests 100

KeepAliveTimeout:在同一个连接上从同一台客户上接收请求的秒数

KeepAliveTimeout 15

Server-Pool大小设定(针对MPM的)

prefork MPM

StartServers:启动时服务器启动的进程数

MinSpareServers:保有的备用进程的最小数目

MaxSpareServers:保有的备用进程的最大数目

MaxClients:服务器允许启动的最大进程数

MaxRequestsPerChild:一个服务进程允许的最大请求数

StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestPerChild 0

worker MPM

StartServers:服务器启动时的服务进程数目

MaxClients:允许同时连接的最大用户数目

MinSpareThreads:保有的最小工作线程数目

MaxSpareThreads:允许保有的最大工作线程数目

ThreadsPerChild:每个服务进程中的工作线程常数

MaxRequestsPerChild:服务进程中允许的最大请求数目

StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0

perchild MPM

NumServers:服务进程数量

StartThreads:每个服务进程中的起始线程数量

MinSpareThreads:保有的最小线程数量

MaxSpareThreads:保有的最大线程数量

MaxThreadsPerChild:每个服务进程允许的最大线程数

MaxRequestsPerChild:每个服务进程允许连接的最大数量

NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0

WinNT MPM

ThreadsPerChild:服务进程中工作线程常数

MaxRequestsPerChild:服务进程允许的最大请求数

ThreadsPerChild 250 MaxRequestsPerChild 0

BeOS MPM

StartThreads:服务器启动时启动的线程数

MaxClients:可以启动的最大线程数(一个线程等于一个用户)

MaxRequestsPerThread:每个线程允许的最大请求数

StartThreads 10 MaxClients 50 MaxRequestsPerThread 10000

NetWare MPM

ThreadStachSize:为每个工作线程分配的堆栈尺寸

StartThreads:服务器启动时启动的线程数

MinSpareThreads:用于处理实发请求的空闲线程数

MaxSpareThreads:空闲线程的最大数量

MaxThreads:在同一时间活动的最大线程数

MaxRequestPerChild:一个线程服务请求的最大数量,

推荐将其设置为0,以实现无限制的接入

ThreadStackSize 65536 StartThreads 250 MinSpareThreads 25 MaxSpareThreads 250 MaxThreads 1000 MaxRequestPerChild 0

OS/2 MPM

StartServers:启动的服务进程数量

MinSpareThreads:每个进程允许的最小空闲线程

MaxSpareThreads:每个进程允许的最大空闲线程

MaxRequestsPerChild:每个服务进程允许的最大连接数

StartServers 2 MinSpareThreads 5 MaxSpareThreads 10 MaxRequestsPerChild 0

Listen:允许你绑定Apache服务到指定的IP地址和端口上,以取代默认值

参见指令

使用如下命令使Apache只在指定的IP地址上监听,

以防止它在IP地址0.0.0.0上监听

Listen 12.34.56.78:80

Listen 80

动态共享支持(DSO)

为了能够使用那些以DSO模式编译的模块中的函数,你必须有相应的"LoadModule"行,

因此,在这里包含了这些指令,以便能在使用它之前激活。

那些静态编译的模块不需要在这里列出 (即以"httpd -l"列出的模块)

示例:

LoadModule foo_module modules/mod_foo.so

ExtendedStatus:当调用"server-status"时,控制Apache是产生"全"状态

信息(ExtendedStatus On),还是产生基本信息(ExtendedStatus Off)。

默认为off

ExtendedStatus On

第二区:"主"服务配置

这一区建立被 "主" 服务器用的指令值,以回应那些不被

定义处理的任何请求。

这些数值也提供默认值给后面定义的容器。

如果中有定义,那么这里定义的指令值将被

中的定义所覆盖。

<IfModule !mpm_winnt.c>
<IfModule !mpm_neware.c>

如果你想使httpd以另外的用户或组来运行,你必须在开始时以root方式启动

然后再将它切换为你想要使用的用户或组。

User/Group:运行httpd的用户和组

在SCO (ODT3)上使用"User nouser"和"Group nogroup"

在HPUX上,你可能不能以nobody身份使用共享内存,建议创建一个www用户。

注意一些核心(kernel)在组ID大于60000时拒绝setgid(Group)或semctl(IPC_SET),

节在这些系统上不要使用"Group #-1"。

User nobody
Group #-1

ServerAdmin:你的邮件地址,当发生问题时Apache将向你发出邮件。

作为一个出错文档,这个地址显示在server-generated页上,

例如:admin@your-domain.com

ServerAdmin kreny@sina.com

ServerName指定Apache用于识别自身的名字和端口号。

通常这个值是自动指定的,但是我们推荐你显式的指定它以防止启动时出错

如果你为你的主机指定了一个无效的DNS名,server-generated重定向将不能工作。

参见UseCanonicalName指令

如果你的主机没有注册DNS名,在这里键入它的IP地址

无论如何,你必须使用它的IP地址来提供服务,

这里使用一种容易理解的方式重定向服务

ServerName www.dalouis.com:80

UseCanonicalName:决定Apache如何构造URLS和 SERVER_NAME 和 SERVER_PORT 的指令。

当设置为 "Off"时,Apache会使用用户端提供的主机名和端口号。

当设置为"On",Apache会使用ServerName指令的值。

UseCanonicalName Off

DocumentRoot:你的文档的根目录。默认情况下,所有的请求从这个目录进行应答。

但是可以使用符号链接和别名来指向到其他的位置。

DocumentRoot "/home/redhat/public_html"

Apache可以存取的每个目录都可以配置存取权限(包括它的子目录)。

首先,我们配置一个高限制的特征。

这将禁止访问文件系统所在的目录,并添加你希望允许访问的目录块。

如下所示

Order Deny,Allow Deny from all

注意从这里开始你一定要明确地允许哪些特别的特征能够被使用。

- 所以,如果Apache没有象你所期待的那样工作的话,

请检查你是否在下面明确的指定它可用。

这将改变到你设置的DocumentRoot

<Directory "/home/redhat/public_html">

Options:这个指令的值可以是"None","All",或者下列选项的任意组合:

Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

注意,"MultiViews"必须被显式的指定,"Options All"不能为你提供这个特性。

这个指令既复杂又重要,请参见

"http://httpd.apache.org/docs-2.0/mod/core.html#optioins"以取得更多的信息。

Options FollowSymLinks

AllowOverride控制那些被放置在.htaccess文件中的指令。

它可以是"All","None",或者下列指令的组合:

Options FileInfo AuthConfig Limit

AllowOverride None

控制谁可以获得服务。

Order allow,deny
Allow from all

UserDir:指定在得到一个~user请求时将会添加到用户home目录后的目录名。

UserDir public_html

为防止在UserDir指令上的漏洞,对root用户设置

象"./"这样的UserDir是非常有用的。

如果你使用Apache 1.3或以上版本,我们强烈建议你

在你的服务器配置文件中包含下面的行

UserDir disabled root

下面是一个使用UserDir指令使一个站点的目录具有只读属性的示例:

<Directory /home/*/public_html>

AllowOverride FileInfo AuthConfig Limit Indexes

Options MultiViews Indexes SymLinksIfOwnerMatch IncludeNoExec

Order allow,deny

Allow from all

Order deny,allow

Deny from all

DirectoryIndex:定义请求是一个目录时,Apache向用户提供服务的文件名

index.html.var文件(一个类型映象文件)用于提供一个文档处理列表,

出于同样的目的,也可以使用MultiViews选项,但是它会非常慢。

DirectoryIndex index.php index.html index.html.var

AccessFileName:在每个目录中查询为目录提供附加配置指令的文件的文件名。

参见AllowOverride指令。

AccessFileName .htaccess

下面的行防止.htaccess和.htpasswd文件被Web客户查看。

<Files ~ "^\.ht">
Order allow,deny
Deny from all

Typeconfig:定义在哪里查询mime.types文件。

TypeConfig conf/mime.types

DefaultType:定义当不能确定MIME类型时服务器提供的默认MIME类型。

如果你的服务主要包含text或HTML文档,"text/plain"是一个好的选择;

如果大多是二进制文档,诸如软件或图像,你应使用

"application/octer-stream"来防止浏览器象显示文本那样显示二进制文件。

DefaultType text/plain

mod_mime_magic允许服务器从自己定义自己类型的文件中使用不同的线索(hints),

这个MIMEMagicFile指令定义hints定义所在的文件。

MIMEMagicFile conf/magic

HostnameLookups:指定记录用户端的名字还是IP地址,例如,本指令为on时

记录主机名,如www.apache.org;为off时记录IP地址,204.62.129.132。

默认值为off,这要比设为on好得多,因为如果设为on则每个用户端请求都将会

至少造成对 nameserver 进行一次查询。

HostnameLookups Off

EnableMMAP:控制是否进行内存转储(如果操作系统支持的话)。

默认为on,如果你的服务器安装在网络文件系统上(NFS),请关闭它。

在一些系统上,关闭它会提升系统性能(与文件系统类型无关);

具体情况请参阅http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap

EnableMMAP off

EnableSendfile:控制是否使用sendfile kernel支持发送文件

(如果操作系统支持的话)。默认为on,如果你的服务器安装在网络文件系统

(NFS)上,请你关闭它。

参见http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile

EnableSendfile off

ErrorLog:错误日志文件定位。

如果你没有在内定义ErrorLog指令,这个虚拟主机的错误信息

将记录在这里。如果你在那儿定义了ErrorLog,这些错误信息将记录在你所

定义的文件里,而不是这儿定义的文件。

ErrorLog logs/error_log

LogLevel:控制记录在错误日志文件中的日志信息数量。

可能的值包括:debug,info,notice,warn,error,crit,alert,emerg。

LogLevel warn

下面的指令为CustomLog指令定义格式别名。

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

你需要安装了mod_logio.c模块才能使用%I和%O。

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

指定接入日志文件的定位和格式(一般日志格式)。

如果你没有在内定义这个指令,传输信息将记录在这里,

如果你定义了这个指令,则记录在你指定的位置,而不是这儿定义的位置。

CustomLog logs/access_log common

如果你想要记录agent和referer信息,可以使用下面的指令

CustomLog logs/referer_log referer

CustomLog logs/agent_log agent

如果你想要使用一个文件记录access,agent和referer信息,

你可以如下定义这个指令:

CustomLog logs/access_log combined

ServerTokens

这个指令定义包含在HTTP回应头中的信息类型。默认为"Full",

这表示在回应头中将包含模块中的操作系统类型和编译信息。

可以设为列各值中的一个:

Full | OS | Minor | Minimal | Major | Prod

Full传达的信息最多,而Prod最少。

ServerTokens Full

随意的添加包含服务器版本和虚拟主机名字一行信息到server-generated输出页中

(内部错误文档,FTP目录列表,mod_status和mod_info输出等等,除了CGI错误

或自定义的错误文档以外)。

设为"EMail"将包含一个指向ServerAdmin的mailto:连接。

可以为如下值:On | Off | EMail

ServerSignature On

Aliases:在这时添加你需要的别名,格式如下:

Alias 别名 真实名

注意,如果你在别名的未尾包含了"/",那么在URL中也需要包含"/"。

因此,"/icons"不是这个示例中的别名。

如果别名中以"/"结尾,那么真实名也必须以"/"结尾,

如果别名中省略了结尾的"/",那么真实名也必须省略。

我们使用别名"/icons/"来表示FancyIndexed目录列表,如果你不使用、

FancyIndexing,你可以注释掉它。

Alias /icons/ "/usr/local/apache2/icons/"

<Directory "/usr/local/apache2/icons">

Options Indexes MultiViews

AllowOverride None

Order allow,deny

Allow from all

这将改变ServerRoot/manual。这个别名提供了手册页所在的位置,

即使你改变了你的DocumentRoot。如果你对有无手册页并不在意的话,

你可以注释掉它。

Alias /manual "/usr/loacl/apache2/manual"

<Directory "/usr/local/apache2/manual">
Options Indexes FollowSymLinks MultiViews IncludesNoExec
AddOutputFilter Includes html
Order allow,deny
Allow from all

ScriptAlias:指定包含服务脚本的目录。

ScriptAliases 本质上与Aliases一样,除了这里的文档在请求时做为程序处理处理以外。

尾部的"/"规则与Alias一样

ScriptAlias /cgi-bin/ "/usr/loacl/apache2/cgi-bin/"

这里是添加php 4支持的指令

AddType application/x-httpd-php .php
LoadModule php4_module modules/libphp4.so

# # 添加mod_cgid.c设置,mod_cgid提供使用cgid进行通讯的UNIX套接字的 # 脚本接口路径。 # # Scriptsock logs/cgisock

将"/usr/local/apache2/cgi-bin"改为你的ScriptAliased指定的CGI目录,

如果你配置了的话。

<Directory "/usr/local/apache2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all

Redirect允许你告诉客户端使用存在于服务器名字空间中的文档,

而不是现在的,这帮助客户定位那些改变了位置的文档。

例如:

Redirect permanent /foo http://www.example.com/bar

控制server-generated目录列表显示的指令

IndexOptions:控制server-generated目录列表显示特征。

IndexOptions FancyIndexing VersionSort

AddIcon* 指令告诉服务器不同扩展名的图象文件如何显示,

只适用于FancyIndexed指令

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 为那些没有显式定义图标的文件提供处理

DefaultIcon /icons/unknown.gif

AddDescription允许你在server-generated索引后放置一个简短的说明。

只对FancyIndexed指令有效。

格式:AddDescription "说明" 文件名

AddDescription "GZIP compressed document" .gz

AddDescription "tar archive" .tar

AddDescription "GZIP compressed tar archive" .tgz

ReadmeName指定服务器默认查找的README文件的名字,并添加到目录列表中

HeaderName指定目录列表前缀文件的文件名

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore指定目录索引忽略并且不包含在列表中的文件名集合,

支持shell类型的通配符。

IndexIgnore .?? ~ # HEADER README RCS CVS ,v *,t

AddEncoding允许你在信息传送中使用(Mosaic/X 2.1+)解压缩信息,

注意:不是所有的浏览器都支持这个选项。

尽管名字相似,但是下列的指令与上面的FancyIndexing定制指令不同。

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

DefaultLanguage和AddLanguage允许你指定文档的语言。

这使你可以让用户用容易理解的语言浏览文档。

指定默认的语言,这意味着所有没有指定语言的包都将使用该语言。

多数情况下,你也许并不想设置它,除非你确信这样做是正确的。

通常,不使用确定的语言比使用错误的语言要好。

DefaultLanguage nl

注意1:作为语言关键字的词缀毫无疑问是不能一样的--采用波兰

文的文档(网络标准语言代码是pl)将希望使用"AddLanguage pl .po"

来避免与perl脚本的一般词缀产生二义性。

注意2: 下面的例子举例说明在一些范例中语言的二字符缩写与它的国家

的二字符缩写不相同,例如 "Danmark/dk" 和 "Danmark/da" 的比较.

注意3: 在 "ltz" 的情况下我们使用三字符词缀,违犯了 RFC的规定,

运行中将修复它并使用RFC1766标准取得参考数据。

Danish (da) - Dutch (nl) - English (en) - Estonian (et)

French (fr) - German (de) - Greek-Modern (el)

Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (ko)

Portugese (pt) - Luxembourgeois* (ltz)

Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)

Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)

Russian (ru) - Croatian (hr)

AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .et
AddLanguage fr .fr
AddLanguage de .de
AddLanguage he .he
AddLanguage el .el
AddLanguage it .it
AddLanguage ja .ja
AddLanguage pl .po
AddLanguage ko .ko
AddLanguage pt .pt
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pt-br .pt-br
AddLanguage ltz .ltz
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .sv
AddLanguage cz .cz
AddLanguage ru .ru
AddLanguage tw .tw
AddLanguage zh-tw .tw
AddLanguage hr .hr

LanguagePriority允许你在会话过程中优先使用一些语言。

以优先次序递减的方式列出它们。我们或多或少地采用按字母排列顺序的方式

排列它们。也许你想要改变这个顺序。

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

ForceLanguagePriority 允许你为MULTIPLE CHOICES(Prefer)[在通讯的情况下]

或NOT ACCEPTABLE(Fallback)[没有可接受的语言匹配的情况]提供一个结果页。

ForceLanguagePriority Prefer Fallback

为发送出的所有页指定默认的字符集,这总是一个好主意,并且为你的

web站点的国际化打开了大门,这不正是你曾经想要的吗。同样地,指定

默认字符集有一些小的损害,如一个使用iso-8859-1(latin1)标准命令

的页面,除非以别的方式指定例如你仅仅以显式方式声明它。

也有一些与那些总是鼓励你使用默认字符集的javascropt和URL语法有关

的浏览器安全原因。

AddDefaultCharset ISO-8859-1

AddDefaultCharse GB2312

一般以文件扩展名的方式使用字符集。也许你想要避免与语言扩展发生

碰撞,除非你在每次改变后都做了很好的测试。

参见http://www.iana.org/assignments/character-sets以取得字符集

的名字列表和它们各自的RFCs。

AddCharset ISO-8859-1 .iso8859-1 .latin1
AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3 .iso8859-3 .latin3
AddCharset ISO-8859-4 .iso8859-4 .latin4
AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5 .Big5 .big5

对于俄语,使用了多个字符集(如何使用主要依靠客户端):

AddCharset WINDOWS-1251 .cp-1251 .win-1251
AddCharset CP866 .cp866
AddCharset KOI8-r .koi8-r .koi8-ru
AddCharset KOI8-ru .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8 .utf8

下面的字符集没有映射到一个特定的标准(iso)上,但是它们在浏览器

中被广泛的支持。注意那些大写字母。

(它不应该,但是它是为兼容一些浏览器而做)

参见http://www.iana.org/assianments/character-sets以取得

它们的列表。但是浏览器支持较少。

AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
AddCharset big5 .big5 .b5
AddCharset EUC-TW .euc-tw
AddCharset EUC-JP .euc-jp
AddCharset EUC-KR .euc-kr
AddCharset shift_jis .sjis

AddType允许你为指定的文件类型添加或覆盖mime.types文件中配置的MIME

AddType application/x-tar .tgz
AddType image/x-icon .ico

AddHandler允许你映射确定的文件扩展名到"handlers":

与文件类型无关的行为。这既能编译到服务器中也可以添加到Action指令

中(看下面)。

为了在ScriptAliased指令指定的以外使用CGI脚本:

(要使它可用,你还需要在Options中添加"ExecCGI"。

AddHandler cgi-script .cgi

对于那些包含他们自己的HTTP头的文件

AddHandler send-as-is asis

对于server-parsed imagemap文件:

AddHandler imap-file map

agemap 文件:

AddHandler imap- 文件映像

对于类型映像转移资源)

(这是默认的设定以允许Apache的"It Worked"页能多种语言分发)。

AddHandler type-map var

过滤器允许你在将它发送到客户端前进行处理。

为了在服务器端分析包含(SSI)的.shtml文档:

(要执行这个指令,你还需要在Options指令中添加"Includes"。)

AddType text/html .shtml

AddOutputFilter INCLUDES .shtml

Action让你定义当调用匹配的媒体文件时将要执行的脚本。这将减少

那些经常使用的CGI脚本的URL路径名的重复输入。

格式:Action media/type /cgi-script/location

格式:Action handler-name /cgi-script/location

可配置的错误应答有三种风格:

1)plain text 2)local redirects 3) external redirects

一些示例:

ErrorDocument 500 "The server made a boo boo."

ErrorDocument 404 /missing.html

ErrorDocument 404 "/cgi-bin/missing_handler.pl"

ErrorDocument 402 http://www.example.com/subscription_info.html

综合应用这些指令,我们可以创建一个国际化的出错应答。

我们使用Alias来重定向任意/error/HTTP_.html.var应答到

我们的多语言错误消息集合。使用正确的文本替代它。

通过加入下面的行,你就能够改变这些消息的显示,而不必改变

HTTP_.html.var文件。

Alias /error/include/ "/your/include/path/"

以将/usr/local/apache2/error/include/下的文件拷贝到/your/inclue/path/下

开始,你可以创建你自己的文件集合,甚至是其于每个虚拟主机的。

不管你的ServerSignature如何设置,默认的包含文件将显示你的

Aapche版本号和你的ServerAdmin邮件地址

国际化的错误文档需要mod_alias,mod_include和mod_negotiation三个

模块。要激活它们,取消下面30行的注释符号

Alias /error/ "/usr/local/apache2/error/"

<Directory "/usr/local/apache2/error">

AllowOverride None

Options IncludesNoExec

AddOutputFilter Includes html

AddHandler type-map var

Order allow,deny

Allow from all

LanguagePriority en de es fr it nl sv

ForceLanguagePriority Prefer Fallback

ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var

ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var

ErrorDocument 403 /error.php

ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var

ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var

ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var

ErrorDocument 410 /error/HTTP_GONE.html.var

ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var

ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var

ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var

ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var

ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var

ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var

ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var

ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var

ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var

ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var

下面的命令更改标准的HTTP应答行为以处理己知的浏览器问题。

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

下面命令关闭对那些没有尾部"/"的目录的非GET请求的重定向,

这些命令修复了微软的采用DAV方法不能正确处理重定向的WEB文件夹的问题。

Apple下的DAV文件系统和Gnome下的VFS对DAV的支持也是采用这样的方法

进行处理的。

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully

允许你使用URL:http://servername/server-status来通过mod_status生

成并报告服务器状态信息。改变.example.com为你自己的域名。

<Location /server-status>

SetHandler server-status

Order deny,allow

Deny from all

Allow from .example.com

允许使用URL:http://servername/server-info来远程报告服务器配置信息

(需要mod_info.c支持)。改变".example.com"为你自己的域名。

<Location /server-info>

SetHandler server-info

Order deny,allow

Deny from all

Allow from .example.com

代理服务器命令,去掉下面的行使代理服务可用。

ProxyRequests On

<roxy *>

Order deny,allow

Deny from all

Allow from .example.com

安装或关闭HTTP/1.1"通道"头处理。

("Full"添加服务器版本信息,"Block"移掉所有输出"通道"头信息。

可以设为下面各选项之一:Off | On | Full | Block

ProxyVia On

最好为代理服务安装高速缓冲,去掉下面几行的注释符号:

(没有CacheRoot则不缓冲)

CacheRoot "/usr/local/apache2/proxy"

CacheSize 5

CacheGcInterval 4

CacheMaxExpire 24

CacheLastModifiedFactor 01

CacheDefaultExpire 1

NoCache a-domain.com another-domain.edu joes.garage-sale.com

代理命令结束。

附加的特定模块配置。

Include conf/ssl.conf

第三区:虚拟主机

VirtualHost:你可以通过设置虚拟主机容器以实现在你的主机上保有多个

域名/主机名。大多数配置信息只使用基于名字的虚拟主机,因此服务器

不必担心IP地址的问题,下面的命令以*号代替虚拟主机名。

在你试着配置你的虚拟主机以前,请参见

URL:http://httpd.apache.org/docs-2.0/vhosts/>以取得更多的信息。

你可以使用命令行选项"-S"来检验你的虚拟主机配置。

使用基于名字的虚拟主机。

NameVirtualHost *

虚拟主机示例:

几乎所有的Apache命令都可以在虚拟主机容器中使用。

第一个虚拟主机区是用于向服务名未知的请求进行应答的配置。

<VirtualHost *>

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot /www/docs/dummy-host.example.com

ServerName dummy-host.example.com

ErrorLog logs/dummy-host.example.com-error_log

CustomLog logs/dummy-host.example.com-access_log commom

 相关推荐

刘强东夫妇:“移民美国”传言被驳斥

京东创始人刘强东和其妻子章泽天最近成为了互联网舆论关注的焦点。有关他们“移民美国”和在美国购买豪宅的传言在互联网上广泛传播。然而,京东官方通过微博发言人发布的消息澄清了这些传言,称这些言论纯属虚假信息和蓄意捏造。

发布于:1年以前  |  808次阅读  |  详细内容 »

博主曝三大运营商,将集体采购百万台华为Mate60系列

日前,据博主“@超能数码君老周”爆料,国内三大运营商中国移动、中国电信和中国联通预计将集体采购百万台规模的华为Mate60系列手机。

发布于:1年以前  |  770次阅读  |  详细内容 »

ASML CEO警告:出口管制不是可行做法,不要“逼迫中国大陆创新”

据报道,荷兰半导体设备公司ASML正看到美国对华遏制政策的负面影响。阿斯麦(ASML)CEO彼得·温宁克在一档电视节目中分享了他对中国大陆问题以及该公司面临的出口管制和保护主义的看法。彼得曾在多个场合表达了他对出口管制以及中荷经济关系的担忧。

发布于:1年以前  |  756次阅读  |  详细内容 »

抖音中长视频App青桃更名抖音精选,字节再发力对抗B站

今年早些时候,抖音悄然上线了一款名为“青桃”的 App,Slogan 为“看见你的热爱”,根据应用介绍可知,“青桃”是一个属于年轻人的兴趣知识视频平台,由抖音官方出品的中长视频关联版本,整体风格有些类似B站。

发布于:1年以前  |  648次阅读  |  详细内容 »

威马CDO:中国每百户家庭仅17户有车

日前,威马汽车首席数据官梅松林转发了一份“世界各国地区拥车率排行榜”,同时,他发文表示:中国汽车普及率低于非洲国家尼日利亚,每百户家庭仅17户有车。意大利世界排名第一,每十户中九户有车。

发布于:1年以前  |  589次阅读  |  详细内容 »

研究发现维生素 C 等抗氧化剂会刺激癌症生长和转移

近日,一项新的研究发现,维生素 C 和 E 等抗氧化剂会激活一种机制,刺激癌症肿瘤中新血管的生长,帮助它们生长和扩散。

发布于:1年以前  |  449次阅读  |  详细内容 »

苹果据称正引入3D打印技术,用以生产智能手表的钢质底盘

据媒体援引消息人士报道,苹果公司正在测试使用3D打印技术来生产其智能手表的钢质底盘。消息传出后,3D系统一度大涨超10%,不过截至周三收盘,该股涨幅回落至2%以内。

发布于:1年以前  |  446次阅读  |  详细内容 »

千万级抖音网红秀才账号被封禁

9月2日,坐拥千万粉丝的网红主播“秀才”账号被封禁,在社交媒体平台上引发热议。平台相关负责人表示,“秀才”账号违反平台相关规定,已封禁。据知情人士透露,秀才近期被举报存在违法行为,这可能是他被封禁的部分原因。据悉,“秀才”年龄39岁,是安徽省亳州市蒙城县人,抖音网红,粉丝数量超1200万。他曾被称为“中老年...

发布于:1年以前  |  445次阅读  |  详细内容 »

亚马逊股东起诉公司和贝索斯,称其在购买卫星发射服务时忽视了 SpaceX

9月3日消息,亚马逊的一些股东,包括持有该公司股票的一家养老基金,日前对亚马逊、其创始人贝索斯和其董事会提起诉讼,指控他们在为 Project Kuiper 卫星星座项目购买发射服务时“违反了信义义务”。

发布于:1年以前  |  444次阅读  |  详细内容 »

苹果上线AppsbyApple网站,以推广自家应用程序

据消息,为推广自家应用,苹果现推出了一个名为“Apps by Apple”的网站,展示了苹果为旗下产品(如 iPhone、iPad、Apple Watch、Mac 和 Apple TV)开发的各种应用程序。

发布于:1年以前  |  442次阅读  |  详细内容 »

特斯拉美国降价引发投资者不满:“这是短期麻醉剂”

特斯拉本周在美国大幅下调Model S和X售价,引发了该公司一些最坚定支持者的不满。知名特斯拉多头、未来基金(Future Fund)管理合伙人加里·布莱克发帖称,降价是一种“短期麻醉剂”,会让潜在客户等待进一步降价。

发布于:1年以前  |  441次阅读  |  详细内容 »

光刻机巨头阿斯麦:拿到许可,继续对华出口

据外媒9月2日报道,荷兰半导体设备制造商阿斯麦称,尽管荷兰政府颁布的半导体设备出口管制新规9月正式生效,但该公司已获得在2023年底以前向中国运送受限制芯片制造机器的许可。

发布于:1年以前  |  437次阅读  |  详细内容 »

马斯克与库克首次隔空合作:为苹果提供卫星服务

近日,根据美国证券交易委员会的文件显示,苹果卫星服务提供商 Globalstar 近期向马斯克旗下的 SpaceX 支付 6400 万美元(约 4.65 亿元人民币)。用于在 2023-2025 年期间,发射卫星,进一步扩展苹果 iPhone 系列的 SOS 卫星服务。

发布于:1年以前  |  430次阅读  |  详细内容 »

𝕏(推特)调整隐私政策,可拿用户发布的信息训练 AI 模型

据报道,马斯克旗下社交平台𝕏(推特)日前调整了隐私政策,允许 𝕏 使用用户发布的信息来训练其人工智能(AI)模型。新的隐私政策将于 9 月 29 日生效。新政策规定,𝕏可能会使用所收集到的平台信息和公开可用的信息,来帮助训练 𝕏 的机器学习或人工智能模型。

发布于:1年以前  |  428次阅读  |  详细内容 »

荣耀CEO谈华为手机回归:替老同事们高兴,对行业也是好事

9月2日,荣耀CEO赵明在采访中谈及华为手机回归时表示,替老同事们高兴,觉得手机行业,由于华为的回归,让竞争充满了更多的可能性和更多的魅力,对行业来说也是件好事。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI操控无人机能力超越人类冠军

《自然》30日发表的一篇论文报道了一个名为Swift的人工智能(AI)系统,该系统驾驶无人机的能力可在真实世界中一对一冠军赛里战胜人类对手。

发布于:1年以前  |  423次阅读  |  详细内容 »

AI生成的蘑菇科普书存在可致命错误

近日,非营利组织纽约真菌学会(NYMS)发出警告,表示亚马逊为代表的电商平台上,充斥着各种AI生成的蘑菇觅食科普书籍,其中存在诸多错误。

发布于:1年以前  |  420次阅读  |  详细内容 »

社交媒体平台𝕏计划收集用户生物识别数据与工作教育经历

社交媒体平台𝕏(原推特)新隐私政策提到:“在您同意的情况下,我们可能出于安全、安保和身份识别目的收集和使用您的生物识别信息。”

发布于:1年以前  |  411次阅读  |  详细内容 »

国产扫地机器人热销欧洲,国产割草机器人抢占欧洲草坪

2023年德国柏林消费电子展上,各大企业都带来了最新的理念和产品,而高端化、本土化的中国产品正在不断吸引欧洲等国际市场的目光。

发布于:1年以前  |  406次阅读  |  详细内容 »

罗永浩吐槽iPhone15和14不会有区别,除了序列号变了

罗永浩日前在直播中吐槽苹果即将推出的 iPhone 新品,具体内容为:“以我对我‘子公司’的了解,我认为 iPhone 15 跟 iPhone 14 不会有什么区别的,除了序(列)号变了,这个‘不要脸’的东西,这个‘臭厨子’。

发布于:1年以前  |  398次阅读  |  详细内容 »
 相关文章
PHP分页显示制作详细讲解 5年以前  |  5086次阅读
Discuz! Passport 通行证整合 5年以前  |  4759次阅读
Apache2 httpd.conf 中文版 5年以前  |  2675次阅读
使用WAMP搭建PHP本地开发环境 5年以前  |  2653次阅读
 目录