我发现网上有一个 Win2000/XP/2003+Apche+PHP+MySQL+Perl 套件(点此下载,安装文件大小15MB,安装后共88MB)非常好用,傻瓜式安装,安装后完美支持PHP、CGI、MYSQL,套件使用程序版本为 Apache v1.3.29 for Win32 / PHP v4.3.4 for Win32 / Zend Optimizer v2.1.0 for Win32 / MySQL v4.0.17 for Win32 / ActivePerl v5.8.0.806 for Win32,各程式安装目录为:
D:\Usr 服务器总目录
+--bin ActivePerl 解释器目录
+--local 程序目录
+--apache Apache 程序目录
+--mysql MySQL 程序目录
+--php PHP 解释器目录
+--Zend Zend Optimizer 程序目录
+--www 网站目录
+--html 网站根(/)目录
+--cgi-bin /cgi-bin/目录
本文件就是从 D:Usr 的总目录这里面抽取的。有如IIS对ASP的完美支持,Apache则是对PHP、CGI完美支持,如果调换了,不仅要另外安装并配置,且总是没效率,比如IIS运行Perl,效率低下,同样Apache默认并不支持ASP,当然这套HTTP服务配置也没有整合支持ASP的组件,所以要需要另外安装 IASP for Win32 和JDK,即JAVA组件,也要在这个 httpd.conf 中做好配置,Apache是HTTP服务的核心组件,其它都是一些支持程序语言的组件,如PHP、CGI等,httpd.conf 是Apache的核心配置文件。
为了使Apache的配置文件更好理解,特作简单中文标记,翻译不准确的地方敬请指教。基于 Apache v1.3.29 for Win32,安装目录: D:Usr
### 部分 1: 全局环境
# ServerType 定义为 inetd 或 standalone 之一,Inetd 模式只用于 Unix 平台
ServerType standalone
# 主机路径
ServerRoot "D:/usr/local/apache"
# PidFile 路径
PidFile logs/httpd.pid
#
# ScoreBoardFile: File used to store internal server process information.
# Not all architectures require this. But if yours does (you'll know because
# this file will be created when you run Apache) then you *must* ensure that
# no two invocations of Apache share the same scoreboard file.
#
ScoreBoardFile logs/apache_runtime_status
# 不使用 srm.conf 和 access.conf 文件
#ResourceConfig nul
#AccessConfig nul
# 超时(秒)
Timeout 300
# 持久连接
KeepAlive On
# 最大请求持久连接
MaxKeepAliveRequests 100
# 持久连接超时(秒)
KeepAliveTimeout 30
# 每个子进程最大请求(0=无限)
MaxRequestsPerChild 0
# 每个子进程线程
ThreadsPerChild 50
# 监听
#Listen 3000
#Listen 12.34.56.78:80
# 限制 IP
#BindAddress *
# 动态共享对象 (DSO) 支持
# 注意:模块加载顺序很重要,在没有专家建议的情况下不要随便改动。
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule mime_magic_module modules/mod_mime_magic.so
#LoadModule status_module modules/mod_status.so
#LoadModule info_module modules/mod_info.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule anon_auth_module modules/mod_auth_anon.so
#LoadModule dbm_auth_module modules/mod_auth_dbm.so
#LoadModule digest_auth_module modules/mod_auth_digest.so
#LoadModule digest_module modules/mod_digest.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule unique_id_module modules/mod_unique_id.so
# [无论你上面改变了什么模块,在这里做同样改变!]
ClearModuleList
#AddModule mod_vhost_alias.c
AddModule mod_env.c
AddModule mod_log_config.c
#AddModule mod_mime_magic.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_isapi.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_dbm.c
#AddModule mod_auth_digest.c
#AddModule mod_digest.c
#AddModule mod_proxy.c
#AddModule mod_cern_meta.c
#AddModule mod_expires.c
#AddModule mod_headers.c
#AddModule mod_usertrack.c
#AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c
# 扩展情况
#ExtendedStatus On
### 部分 2: 主机配置
# 端口
Port 80
# 主机管理员信箱
ServerAdmin admin@localhost.net
# 主机名
ServerName localhost
# 文档路径
DocumentRoot "D:/usr/www/html"
# 绝对限制许可
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
# 文档路径权限设置
<Directory "D:/usr/www/html">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
# 用户路径
<IfModule mod_userdir.c>
UserDir "D:/usr/local/apache/users/"
</IfModule>
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
#<Directory "D:/usr/local/apache/users">
# AllowOverride FileInfo AuthConfig Limit
# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
# <Limit GET POST OPTIONS PROPFIND>
# Order allow,deny
# Allow from all
# </Limit>
# <LimitExcept GET POST OPTIONS PROPFIND>
# Order deny,allow
# Deny from all
# </LimitExcept>
#</Directory>
# 索引文件
<IfModule mod_dir.c>
DirectoryIndex index.html index.htm index.php
</IfModule>
# 访问控制文件名
AccessFileName access.ht
#
# 防止访问控制文件被访问者察看
<Files ~ "^access.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
# 缓存协议
#CacheNegotiatedDocs
#
# 使用规范名称
UseCanonicalName On
# 类型设置
<IfModule mod_mime.c>
TypesConfig conf/mime.types
</IfModule>
#
# 默认协议
DefaultType text/plain
# 魔术设置
<IfModule mod_mime_magic.c>
MIMEMagicFile conf/magic
</IfModule>
# 主机名查找
HostnameLookups Off
# 错误记录
ErrorLog logs/error.log
# 记录等级,包括:debug, info, notice, warn, error, crit, alert, emerg.
LogLevel error
# 记录格式
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
# 访问记录
#CustomLog logs/access.log common
# 服务器签名
# 选择一个: On &line; Off &line; EMail
ServerSignature On
# CGI 脚本解释路径
#!D:/usr/bin/perl
# 以 CGI 模式运行 PHP 脚本
ScriptAlias /php/ "D:/usr/local/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"
# 别名开始
<IfModule mod_alias.c>
Alias /icons/ "D:/usr/local/apache/icons/"
<Directory "D:/usr/local/apache/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
# 脚本路径别名
ScriptAlias /cgi-bin/ "D:/usr/www/cgi-bin/"
<Directory "D:/usr/www/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
</IfModule>
# 别名结束
# 自动索引目录下所有文件
<IfModule mod_autoindex.c>
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
# Readme 文件名及 Header 文件名
ReadmeName README.txt
HeaderName HEADER.txt
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
</IfModule>
# 结束自动索引
# 文档类型
<IfModule mod_mime.c>
AddType application/x-tar .tgz
AddEncoding x-compress .Z
AddEncoding x-gzip .gz .tgz
# 语言
AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .ee
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage he .he
AddCharset ISO-8859-8 .iso8859-8
AddLanguage it .it
AddLanguage ja .ja
AddCharset ISO-2022-JP .jis
AddLanguage kr .kr
AddCharset ISO-2022-KR .iso-kr
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddCharset ISO-8859-2 .iso-pl
AddLanguage pt .pt
AddLanguage pt-br .pt-br
AddLanguage ltz .lu
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .sv
AddLanguage cs .cz .cs
AddLanguage ru .ru
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw
AddCharset GB2312 .Gb2312 .gb
AddCharset Big5 .Big5 .big5
AddCharset WINDOWS-1251 .cp-1251
AddCharset CP866 .cp866
AddCharset ISO-8859-5 .iso-ru
AddCharset KOI8-R .koi8-r
AddCharset UCS-2 .ucs2
AddCharset UCS-4 .ucs4
AddCharset UTF-8 .utf8
# 语言优先顺序
<IfModule mod_negotiation.c>
LanguagePriority cn en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca es sv tw
</IfModule>
</IfModule>
# 文档类型结束
# 定制浏览器特征
<IfModule mod_setenvif.c>
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
</IfModule>
# 定制浏览器特征结束
### 部分 3: 虚拟主机
# 基于名称的虚拟主机示例:
#<VirtualHost *:80>
# 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 common
#</VirtualHost>