📄 1271.html
字号:
<font color="#FF6699">>></font>
<A href="type18.html" tppabs="http://www.linuxhero.com/docs/type18.html">apache</A> | <A href="copyright.html" tppabs="http://www.linuxhero.com/docs/copyright.html">版权说明</A></font></DIV>
</TD>
<TD><IMG height=22 src="images/spacer.gif" tppabs="http://www.linuxhero.com/docs/images/spacer.gif" width=1
border=0></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=10 cellPadding=0 width="100%" bgColor=#ffffff
border=0>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=3 width="100%" border=0>
<TR>
<TD vAlign=top align=middle width="60%">
<TABLE cellSpacing=0 cellPadding=0 width="100%"
background="images/back.gif" tppabs="http://www.linuxhero.com/docs/images/back.gif" border=0>
<TBODY>
<TR>
<TD vAlign=top width="80%">
<DIV align=center>
<FORM action="search.html" tppabs="http://www.linuxhero.com/docs/search.html" method=get>
</FORM>
<TABLE cellSpacing=0 cellPadding=0 width="95%"
border=0><TBODY>
<TR>
<TD background="images/bgi.gif" tppabs="http://www.linuxhero.com/docs/images/bgi.gif"
height=30></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=3 width="95%"
align=center border=0>
<TBODY>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=3 width="100%"
border=0>
<TBODY>
<TR>
<TD vAlign=top>
<p><FONT class=normalfont><B><font color=blue>apache基本教程</font></B></FONT><BR><FONT class=smallfont color=#ff9900>2004-04-23 15:18 pm</FONT><BR><FONT class=normalfont>作者:Mark Lomarinski 和 Cary Collett<br>来自:Linux知识宝库<br>联系方式:无名<br><br>Apache(1)<br>
<br>
发布日期:1999-12-09<br>
文摘内容:<br>
--------------------------------------------------------------------------------<br>
原著:Mark Lomarinski 和 Cary Collett<br>
<br>
<br>
编译Apache<br>
<br>
逐步指导如何定制世界最流行的Web服务器<br>
<br>
概要:<br>
<br>
如果你的工作职则包括管理Apache,很有可能有一天你需要自己编译Apache。Mark 和Cary介绍了一些Apache的编译及其模块的选项,并演示了他们如何建立一个命令行的配置来编译Apache。<br>
<br>
<br>
现在你已经拿到了你那闪亮的新Linux机器,它已经安装了Apache,运行地很好。但是现在你需要升级你的Web服务器,或你想运行一些可选的模块,可能你也想去掉一些缺省的模块,你不见得在已编译的Apache版本中找得到你需要的模块。<br>
<br>
现在就需要你自己编译Apache了。<br>
<br>
即使你不需要增加或删除Apache模块,在你事业的某一刻作为系统管理员你也有可能需要改变Apache的实时配置。<br>
<br>
不管是哪种情况,Apache的缺省配置或配置你自己的安装在最开始都会让人气馁。<br>
这个月,我们要谈谈编译Apache1.3的实时配置及其它常用的实时.conf 文件例子。<br>
<br>
获得Apache<br>
<br>
获得apache源代码最方便的方法是到Apache项目网址(http://www.apache.org/)或其镜相点(见以下的资源)上的下载区域(http://your.nearyby.apache.mirror/dist/)。选择最新的版本。在我们写这篇文章的时候最新版是1.3.3。<br>
<br>
由于Apache小组一直在修补bug并改进代码,重要的是你得到最新的版本。<br>
<br>
<br>
<br>
编译Apache<br>
<br>
在1.3版以前,Apache使用的配置的基础即不是GNU的autoconf也不是Imake---两种最常用的自动配置的工具。另外,也没有现成的安装可使你用熟悉的办法安装。<br>
<br>
现在一切都会很好办,如果你在你想要运行Apache的目录中解开tarball。 但是如果你想要在不同的目录树中运行Apache,你将不得不用手复制目录结构。<br>
<br>
版本1.3使用GNU autoconf但是仍然为宁愿它的那些人支持配置的旧的风格。 除此之外基于更多标准的GNU autoconf,版本1.3使增加第三方模块变得容易: 为了增加一种新的模块,你<br>
<br>
在构成Apache时简单地使用--激活模块指示。 因此不再需要编辑文件。<br>
<br>
只要你在配置使用autoconf的Apache时运行./configure--help是一个好主意。 这应该产生一个配置会接受的冗长的一般标记表,在最后还有你所编译程序的列表。<br>
<br>
由于这是一张长的表,你将有可能想要通过进入把它输送到你特别喜爱页码程序(例如,less):<br>
<br>
./configure--help|less<br>
<br>
在./configure--help开始时所列出的输出选项中,有一个你将要很有可能想要使用--prefix。 它控制Apache安装的根目录的位置。 其它有用的指示下面在表格上被列出。<br>
<br>
--datadir=DIR<br>
文件根(htdocs)和cgi-bin目录将在<br>
<br>
什么地方被建立,缺 省为<prefix>/share<br>
<br>
--runtimedir=DIR<br>
过程识别(PID)文件将在什么地方被保存<br>
<br>
缺省为<prefix>/var/apache/run<br>
<br>
--logfiledir=DIR<br>
log文件将在什么地方被保存<br>
<br>
缺省为<prefix>/var/apache/log<br>
<br>
如果DIR前面没有/,它被理解为与你冠有--prefix的目录有关,否则被理解为一条绝对的路径。<br>
<br>
所有这些(除安装目录外)能在.conf文件中的时间库中修改。 然而,如果你想要新的Apache控制程序(Apachetl)充分发挥作用而没有任何修改,你至少应该在编译时间表明的位置留下PID文件。<br>
<br>
好的规则<br>
<br>
更进一步的--help输出是更有趣的指示。 下一段是一套配置规则,我们想用Apache支持IRIXN32,IRIXNIS,PARANOID,SHARED-CHAIN,SHARED-CORE,SOCKS4,SOCKS5,和/或WANTHSREGEX。<br>
<br>
头两项规则与SGI的Irix有关,它们可以忽略并保留缺省值。 PARANOID是在编译模块时间里与执行Shell命令的Apache1.3能力相联系的。 如果你键入<br>
<br>
--enable-rule=PARANOID<br>
<br>
配置将发出回声它执行的命令终端。<br>
<br>
SHARED-CHAIN和SHARED-CORE规则是Apache动态的共用的对象(DSO)支持的一部分。 DSO大部分的强迫特性让你再编译模块并装载它而不用再编译Apache。<br>
<br>
DSO仍然是实验性和有疑问的,尤其如果你使用不支持它的第三方模块。 我们不推荐DSO除非你确实需要它。<br>
<br>
你可能需要SHARED-CHAIN,如果你有模块你作为编译共用的对象,其参考其它共用的对象或者库。<br>
<br>
SHARED-CORE也使Apache核心共用。 对于这个例子,只要使用其缺省值。<br>
<br>
SOCKS4和SOCKS5指示仅仅在你使用Apache作为proxy服务器时使用。 它们分别支持SOCK代理协议的版本4和5。 使用Apache作为代理人服务器超出本文的范围,如此我们暂时放开这个话题,但是我们计划在未来讨论它。<br>
<br>
最后是WANTHSREGEX规则。 它控制Apache是否将使用系统常规的表达库或者随Apache发布来的regex库。 我们通常发现简单地使用随Apache发布的regex库是容易的。 这样,所有规则中,这是将在配置命令行中唯一一个。<br>
<br>
<br>
在规则段之下是激活第三方模块的两条指令。 第一,--add-module=<file>,将首先从<file>拷贝模块到Apache建造目录并激活它; 第二,--activate-module=<file>,如果你已经在适当的位置上有模块,此指令会被使用。<br>
<br>
<br>
<file>的确切的形式依模块而变化。 我们将不再讨论增加第三方模块,但是我们计划在以后讨论。<br>
<br>
<br>
模块操纵<br>
<br>
下一段控制随Apache而来的模块,许多你从不需要触到。<br>
<br>
完全的列表(从./configure--help输出)为:<br>
<br>
access=yes<br>
actions=yes<br>
alias=yes<br>
<br>
asis=yes<br>
auth=yes<br>
auth-anon=no<br>
<br>
auth-db=no<br>
auth-dbm=no<br>
autoindex=yes<br>
<br>
cern-meta=no<br>
cgi=yes<br>
digest=no<br>
<br>
dir=yes<br>
env=yes<br>
example=no<br>
<br>
expires=no<br>
headers=no<br>
imap=yes<br>
<br>
include=yes<br>
info=no<br>
log_agent=no<br>
<br>
log_config=yes<br>
log_referer=no<br>
mime=yes<br>
<br>
mime_magic=no<br>
mmap-static=no<br>
negotiation=yes<br>
<br>
proxy=no<br>
rewrite=no<br>
setenvif=yes<br>
<br>
so=no<br>
speling=no<br>
status=yes<br>
<br>
unique_id=no<br>
userdir=yes<br>
usertrack=no<br>
<br>
所有的模块的短描述能在src/Configuration中被找到。 有些模块你很有可能将要用到,下面是简要的描述。 我们没有涉及到的那些模块可以使用缺省设置。 简言之,如果你对一些模块<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -