Apache(2)
发布日期:1999-12-09
文摘内容:
--------------------------------------------------------------------------------
来源:中国Linux论坛 <http://www.linuxforum.net/>
原著:Mark Lomarinski 和 Cary Collett
翻译:<>
Acess
你想要进入控制吗?
auth
检查Unix-style口令和组文件的基本的验证。
auth-anon
使用匿名的FTP-style usernames和口令。
auth-dbm
使用Berkeley db文件存储usernames,口令,和组信息。如果你有很多usernames并关心性能, 这是很有用的。
digest
使用HTTP文摘验证,这比基本的验证更安全。
expire(过期)模块让你定制Expire: 基于像进入时间或者修改时间一样的事情的各种各样的资源的标题。
如果你想要能够跟踪你站点的点击,不想要使用某种进入控制的方法,你能使usertrack激活。 它使用cookie值作为一个唯一的ID。
共用的模块通过so模块成为可用。 如上所述,共用的模块和DSO是实验性的,不推荐使用。
在Apache1.3中鼓励你通过客户log记录所有登录。 Apache提供复制标准的agent和refer报告格式的log格式。 这意味你将很有可能想要把log_config设置把为On,log_agent和log_refer为off,因为它们是多余的。
如果你不想要你的用户自动地有一个目录可以为HTML服务(通过http://your.server.com/~user),你能使userdir模块禁用。
最后,如果你需要做URI-to-filename地图,你能够重写模块。 它可让你使用常规的表达式对要求做复杂(和简单!) 重写。
一个具体的例子: 我们如何构成Apache
当我们建立构成命令行,我们喜欢打开Xemacs缓冲器并且打出(或者拷贝和粘贴)命令并且为将来的再编译保存它。
我们当前Apache配置行看起来如下:
./configure--prefix=/home/httpd
--enable-rule=WANTHSREGEX
--activate-module=src/modules/PyApache/mod-pyapache.c
--activate-module=src/modules/php3/libphp3.a
--enable-module=headers
首先,我们告诉Apache使用捆绑的regex库; 然后,我们使两种第三方模块可用:PyApache的(在Apache中嵌入Python 解释器以消除Python CGI语句解释程序的启动时间)和PHP3(类C的HTML嵌入语言); 最后,我们打开标题模块,因为我们为登录目的使用某种专断的标题。
当我们运行配置,我们得到以下输出:
Configuring for Apache, Version 1.3.3
+ activated pyapache module (modules/PyApache/mod_pyapache.c)
+ activated php3 module (modules/php3/libphp3.a)
Creating Makefile
Creating Configuration.apaci in src
Creating Makefile in src
+ configured for Linux platform
+ setting C compiler to gcc
+ setting C pre-processor to gcc -E
+ checking for system header files
+ adding selected modules
o PyApache uses ConfigStart/End
o php3_module uses ConfigStart/End
+ doing sanity check on compiler and options
Creating Makefile in src/support
Creating Makefile in src/main
Creating Makefile in src/ap
Creating Makefile in src/regex
Creating Makefile in src/os/unix
Creating Makefile in src/modules/standard
Creating Makefile in src/modules/PyApache
Creating Makefile in src/modules/php3
所有坚苦的工作现在被完成! 键入:
make install
它应该建造二进制文件(httpd加一些帮助程序),建立目录树并且安装各种文件。
Apache1.3的缺省目录布局是:
./bin
帮助程序和原代码(htpasswd)
./etc/apache
Apache配置文件
./include/apache
Apache标题文件
./libexec
共用的对象文件
./man
man 页
./sbin
服务器二进制,apachectl原本,log rotator
./share/cgi-bin
缺省CGI原本/二进制的目录
./share/htdocs
缺省文件根
./share/htdocs/manual
Apache手册
./share/icon
包含各种图标GIFs的目录
./var/apache/log
log文件的目录
./var/apache/proxy
proxy缓存目录
./var/apache/run
httpd.pid(包含主要的httpd过程标识
符的文件)在此目录
与Apache1.3一样apachectl原代码也是新的,它让你停止、开始,得到服务器状态并且再装入.conf文件。从安装目录开始运行Apache键入
sbin/apachectl start.
运行sbin/apachectl(没有变元)将给你变元和简短描述的列表。
你现在有手工定制的Apache服务器运行并准备提供页面服务并且执行CGIs!
关于更多信息,你当然应该访问Apache的Web页面,在那里你总可以找到最新的信息、补丁和公告。 你也可以登记Apache邮件列表。(apache-anounce-request@apache.org)或者阅读comp.infosystems.www.servers.unix newsgroup。
我们下个月将从功能、安全、和性能等方面讨论Apache的运行配置。接下来的部分将讨论诸如mod-php3和mod-perl的各种第三方模块。
关于作者
Mark Komarinski是Waltham,MA的Auraora Technologies的系统管理人员。 他是以前Linux期刊LinuxCompanion的专栏作者和作者。 他和Cary Collett 共同发表了The Linux System Administration Handbook