亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

directory search
首頁 版本說明 從1.3升級到2.0 編譯時配置的改變 運行時配置的改變 雜項變化 第三方模塊 從 2.0 升級到 2.2 編譯時配置的改變 運行時配置的改變 雜項變化 第三方模塊 Apache 2.1/2.2 版本的新特性 核心增強 模塊增強 程序增強 針對模塊開發(fā)者的變化 Apache 2.0 版本的新特性 核心的增強 模塊的增強 Apache許可證 參考手冊 編譯與安裝 針對心急者的概述 要求 下載 解壓 配置源代碼樹 編譯 安裝 配置 測試 升級 啟動 Apache是怎樣啟動的 啟動時發(fā)生錯誤 隨系統(tǒng)啟動時啟動 額外信息 停止與重新啟動 簡介 立即停止 優(yōu)雅重啟 立即重啟 優(yōu)雅停止 附錄:信號和競爭條件 運行時配置指令 主配置文件 配置文件的語法 模塊 指令的作用域 .htaccess文件 配置段 配置段(容器)的類型 文件系統(tǒng)和網(wǎng)絡(luò)空間 虛擬主機 代理 允許使用哪些指令? 配置段的合并 內(nèi)容緩沖 簡介 緩沖概述 安全方面的考慮 文件句柄緩沖 內(nèi)存緩沖 磁盤緩沖 服務(wù)器全局配置 服務(wù)器標(biāo)識 文件定位 限制資源的使用 日志文件 安全警告 錯誤日志 訪問日志 日志滾動 管道日志 虛擬主機 其他日志文件 從URL到文件系統(tǒng)的映射 相關(guān)模塊和指令 DocumentRoot DocumentRoot以外的文件 用戶目錄 URL重定向 反向代理 重寫引擎 File Not Found 安全方面的提示 保持不斷更新和升級 ServerRoot目錄的權(quán)限 服務(wù)器端包含 關(guān)于CGI 未指定為腳本的CGI 指定為腳本的CGI 其他動態(tài)內(nèi)容的來源 系統(tǒng)設(shè)置的保護 默認配置下服務(wù)器文件的保護 觀察日志文件 動態(tài)共享對象(DSO) 實現(xiàn) 用法概要 背景知識 優(yōu)點和缺點 內(nèi)容協(xié)商 關(guān)于內(nèi)容協(xié)商 Apache中的內(nèi)容協(xié)商 協(xié)商的方法 打亂品質(zhì)值 透明內(nèi)容協(xié)商的擴展 超鏈和名稱轉(zhuǎn)換說明 緩沖說明 更多信息 自定義錯誤響應(yīng) 行為 配置 自定義錯誤響應(yīng)與重定向 地址和端口綁定 概述 針對IPv6的特殊考慮 怎樣與虛擬主機協(xié)同工作 多路處理模塊(MPM) 簡介 選擇一個MPM 默認的MPM 環(huán)境變量 設(shè)置環(huán)境變量 使用環(huán)境變量 用于特殊目的的環(huán)境變量 示例 處理器的使用 什么是處理器? 例子 程序員注意事項 過濾器 Apache2中的過濾器 智能過慮 使用過濾器 CGI腳本的Suexec執(zhí)行 開始之前 suEXEC的安全模型 配置和安裝suEXEC 啟用和禁用suEXEC 使用suEXEC 調(diào)試suEXEC 謹防Jabberwock:警告和舉例 性能調(diào)整 硬件和操作系統(tǒng) 運行時的配置 編譯時的配置 附錄:蹤跡的詳細分析 URL重寫指南 mod_rewrite簡介 實踐方案 URL的規(guī)劃 內(nèi)容的處理 對訪問的限制 其他 虛擬主機文檔 總述 虛擬主機支持 配置指令 基于主機名的虛擬主機 基于域名的虛擬主機和基于IP的虛擬主機比較 使用基于域名的虛擬主機 與舊版瀏覽器的兼容性 基于IP地址的虛擬主機 系統(tǒng)需求 如何配置Apache 設(shè)置多個守護進程 配置擁有多個虛擬主機的單一守護進程 動態(tài)配置大量虛擬主機 動機 概述 簡單的動態(tài)虛擬主機 一個實際的個人主頁系統(tǒng) 在同一個服務(wù)器上架設(shè)多個主機的虛擬系統(tǒng) 更為有效的基于IP地址的虛擬主機 使用老版本的Apache 使用mod_rewrite實現(xiàn)簡單的動態(tài)虛擬主機 使用mod_rewrite的個人主頁系統(tǒng) 使用獨立的虛擬主機配置文件 虛擬主機的普通配置示例 在一個IP地址上運行多個基于域名的web站點 在多于一個IP的情況下使用基于域名的虛擬主機 在不同的IP的地址(比如一個內(nèi)部和一個外部地址)上提供相同的內(nèi)容 在不同的端口上運行不同的站點 建立基于IP的虛擬主機 混用基于端口和基于IP的虛擬主機 混用基于域名和基于IP的虛擬主機 將虛擬主機和代理模塊一起使用 使用默認虛擬主機 將一個基于域名的虛擬主機移植為一個基于IP的虛擬主機 使用ServerPath指令 深入討論虛擬主機的匹配 解析配置文件 虛擬主機匹配 小技巧 文件描述符限制 關(guān)于DNS和Apache 一個簡單示例 拒絕服務(wù) "主服務(wù)器"地址 避免這些問題的小技巧 附錄:進一步的提示 常見問題 概述 SSL/TLS 加密 概述 文檔 mod_ssl 緒論 密碼技術(shù) 證書 安全套接字層(SSL) 參考 兼容性 配置指令 環(huán)境變量 自定義日志功能 如何... 加密方案和強制性高等級安全 客戶認證和訪問控制 常見問題解答 About The Module Installation Configuration Certificates The SSL Protocol mod_ssl Support 如何.../指南 概述 認證 相關(guān)模塊和指令 簡介 先決條件 啟用認證 允許多人訪問 可能存在的問題 其他認證方法 更多信息 CGI動態(tài)頁面 簡介 配置Apache以允許CGI 編寫CGI程序 程序還是不能運行! 幕后是怎樣操作的? CGI模塊/庫 更多信息 服務(wù)器端包含 簡介 什么是SSI? 配置服務(wù)器以允許SSI 基本SSI指令 附加的例子 我還能設(shè)置其它什么? 執(zhí)行命令 高級SSI技術(shù) 總結(jié) .htaccess文件 .htaccess文件 工作原理和使用方法 (不)使用.htaccess文件的場合 指令的生效 認證舉例 服務(wù)器端包含(SSI)舉例 CGI舉例 疑難解答 用戶網(wǎng)站目錄 用戶網(wǎng)站目錄 用UserDir設(shè)置文件路徑 限定哪些用戶可以使用此功能 啟用對每個用戶都有效的cgi目錄 允許用戶改變配置 對特定平臺的說明 概述 Microsoft Windows 其他平臺 在Microsoft Windows中使用Apache 對操作系統(tǒng)的要求 下載 Apache for Windows 安裝 Apache for Windows 配置 Apache for Windows 以服務(wù)方式運行 Apache for Windows 作為控制臺程序運行Apache 測試安裝 編譯Windows下的Apache 系統(tǒng)要求 命令行編譯 Developer Studio集成開發(fā)環(huán)境的工作區(qū)編譯 項目組件 在Novell NetWare平臺上使用Apache Requirements Downloading Apache for NetWare Installing Apache for NetWare Running Apache for NetWare Configuring Apache for NetWare Compiling Apache for NetWare 在HP-UX中運行Apache The Apache EBCDIC Port Overview of the Apache EBCDIC Port Design Goals Technical Solution Porting Notes Document Storage Notes Apache Modules' Status Third Party Modules' Status 服務(wù)器與支持程序 概述 httpd 語法 選項 ab 語法 選項 Bugs apachectl 語法 選項 apxs 語法 選項 舉例 configure 語法 選項 環(huán)境變量 dbmmanage 語法 選項 Bugs htcacheclean 語法 選項 返回值 htdbm 語法 選項 Bugs 返回值 舉例 安全方面的考慮 限制 htdigest 語法 選項 htpasswd 語法 選項 返回值 舉例 安全方面的考慮 限制 logresolve 語法 選項 rotatelogs 語法 選項 Portability suexec 語法 選項 其他程序 log_server_status split-logfile 雜項文檔 概述 相關(guān)標(biāo)準(zhǔn) HTTP推薦標(biāo)準(zhǔn) HTML推薦標(biāo)準(zhǔn) 認證 語言/國家代碼 Apache 模塊 描述模塊的術(shù)語 說明 狀態(tài) 源代碼文件 模塊標(biāo)識符 兼容性 描述指令的術(shù)語 說明 語法 默認值(Default) 作用域(Context) 覆蓋項(Override) 狀態(tài) 模塊(Module) 兼容性(Compatibility) Apache核心(Core)特性 AcceptFilter AcceptPathInfo AccessFileName AddDefaultCharset AddOutputFilterByType AllowEncodedSlashes AllowOverride AuthName AuthType CGIMapExtension ContentDigest DefaultType <Directory> <DirectoryMatch> DocumentRoot EnableMMAP EnableSendfile ErrorDocument ErrorLog FileETag <Files> <FilesMatch> ForceType HostnameLookups <IfDefine> <IfModule> Include KeepAlive KeepAliveTimeout <Limit> <LimitExcept> LimitInternalRecursion LimitRequestBody LimitRequestFields LimitRequestFieldSize LimitRequestLine LimitXMLRequestBody <Location> <LocationMatch> LogLevel MaxKeepAliveRequests NameVirtualHost Options Require RLimitCPU RLimitMEM RLimitNPROC Satisfy ScriptInterpreterSource ServerAdmin ServerAlias ServerName ServerPath ServerRoot ServerSignature ServerTokens SetHandler SetInputFilter SetOutputFilter TimeOut TraceEnable UseCanonicalName UseCanonicalPhysicalPort <VirtualHost> Apache MPM 公共指令 AcceptMutex CoreDumpDirectory EnableExceptionHook GracefulShutdownTimeout Group Listen ListenBackLog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MinSpareThreads PidFile ReceiveBufferSize ScoreBoardFile SendBufferSize ServerLimit StartServers StartThreads ThreadLimit ThreadsPerChild ThreadStackSize User Apache MPM beos MaxRequestsPerThread CoreDumpDirectory Group Listen ListenBacklog MaxClients MaxMemFree MaxSpareThreads MinSpareThreads PidFile ReceiveBufferSize ScoreBoardFile SendBufferSize StartThreads User Apache MPM event AcceptMutex CoreDumpDirectory EnableExceptionHook Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MinSpareThreads PidFile ScoreBoardFile SendBufferSize ServerLimit StartServers ThreadLimit ThreadsPerChild ThreadStackSize User Apache MPM netware MaxThreads Listen ListenBacklog MaxMemFree MaxRequestsPerChild MaxSpareThreads MinSpareThreads ReceiveBufferSize SendBufferSize StartThreads ThreadStackSize Apache MPM os2 Group Listen ListenBacklog MaxRequestsPerChild MaxSpareThreads MinSpareThreads PidFile ReceiveBufferSize SendBufferSize StartServers User Apache MPM prefork 工作方式 MaxSpareServers MinSpareServers AcceptMutex CoreDumpDirectory EnableExceptionHook Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild PidFile ReceiveBufferSize ScoreBoardFile SendBufferSize ServerLimit StartServers User Apache MPM winnt Win32DisableAcceptEx CoreDumpDirectory Listen ListenBacklog MaxMemFree MaxRequestsPerChild PidFile ReceiveBufferSize ScoreBoardFile SendBufferSize ThreadLimit ThreadsPerChild ThreadStackSize Apache MPM worker 工作方式 AcceptMutex CoreDumpDirectory EnableExceptionHook Group Listen ListenBacklog LockFile MaxClients MaxMemFree MaxRequestsPerChild MaxSpareThreads MinSpareThreads PidFile ReceiveBufferSize ScoreBoardFile SendBufferSize ServerLimit StartServers ThreadLimit ThreadsPerChild ThreadStackSize User Apache Module mod_actions Action指令 Script指令 Apache Module mod_alias 處理順序 Alias AliasMatch Redirect RedirectMatch RedirectPermanent RedirectTemp ScriptAlias ScriptAliasMatch Apache Module mod_asis 用法 Apache Module mod_auth_basic AuthBasicAuthoritative AuthBasicProvider Apache Module mod_auth_digest 使用摘要認證 配合 MS Internet Explorer 6 工作 AuthDigestAlgorithm AuthDigestDomain AuthDigestNcCheck AuthDigestNonceFormat AuthDigestNonceLifetime AuthDigestProvider AuthDigestQop AuthDigestShmemSize Apache Module mod_authn_alias 示例 <AuthnProviderAlias> Apache Module mod_authn_anon 示例 Anonymous Anonymous_LogEmail Anonymous_MustGiveEmail Anonymous_NoUserID Anonymous_VerifyEmail Apache Module mod_authn_dbd 配置示例 AuthDBDUserPWQuery AuthDBDUserRealmQuery Apache Module mod_authn_dbm AuthDBMType AuthDBMUserFile Apache Module mod_authn_default AuthDefaultAuthoritative Apache Module mod_authn_file AuthUserFile Apache Module mod_authnz_ldap Contents Operation The require Directives 舉例 Using TLS Using SSL Using Microsoft FrontPage with mod_authnz_ldap AuthLDAPBindDN AuthLDAPBindPassword AuthLDAPCharsetConfig AuthLDAPCompareDNOnServer AuthLDAPDereferenceAliases AuthLDAPGroupAttribute AuthLDAPGroupAttributeIsDN AuthLDAPRemoteUserIsDN AuthLDAPUrl AuthzLDAPAuthoritative Apache Module mod_authz_dbm AuthDBMGroupFile AuthzDBMAuthoritative AuthzDBMType Apache Module mod_authz_default AuthzDefaultAuthoritative Apache Module mod_authz_groupfile AuthGroupFile AuthzGroupFileAuthoritative Apache Module mod_authz_host Allow Deny Order Apache Module mod_authz_owner 配置示例 AuthzOwnerAuthoritative Apache Module mod_authz_user AuthzUserAuthoritative Apache Module mod_autoindex Autoindex Request Query Arguments AddAlt AddAltByEncoding AddAltByType AddDescription AddIcon AddIconByEncoding AddIconByType DefaultIcon HeaderName IndexIgnore IndexOptions IndexOrderDefault IndexStyleSheet ReadmeName Apache Module mod_cache Related Modules and Directives 配置示例 CacheDefaultExpire CacheDisable CacheEnable CacheIgnoreCacheControl CacheIgnoreHeaders CacheIgnoreNoLastMod CacheLastModifiedFactor CacheMaxExpire CacheStoreNoStore CacheStorePrivate Apache Module mod_cern_meta MetaDir MetaFiles MetaSuffix Apache Module mod_cgi CGI 環(huán)境變量 CGI 腳本的調(diào)試 ScriptLog ScriptLogBuffer ScriptLogLength Apache Module mod_cgid ScriptSock ScriptLog ScriptLogBuffer ScriptLogLength Apache Module mod_charset_lite Common Problems CharsetDefault CharsetOptions CharsetSourceEnc Apache Module mod_dav Enabling WebDAV Security Issues Complex Configurations Dav DavDepthInfinity DavMinTimeout Apache Module mod_dav_fs DavLockDB Apache Module mod_dav_lock DavGenericLockDB Apache Module mod_dbd Connection Pooling Apache DBD API SQL Prepared Statements DBDExptime DBDKeep DBDMax DBDMin DBDParams DBDPersist DBDPrepareSQL DBDriver Apache Module mod_deflate 配置舉例 啟用壓縮 代理服務(wù)器 DeflateBufferSize DeflateCompressionLevel DeflateFilterNote DeflateMemLevel DeflateWindowSize Apache Module mod_dir DirectoryIndex DirectorySlash Apache Module mod_disk_cache CacheDirLength CacheDirLevels CacheMaxFileSize CacheMinFileSize CacheRoot Apache Module mod_dumpio 啟用dumpio支持 DumpIOInput DumpIOOutput Apache Module mod_echo ProtocolEcho Apache Module mod_env PassEnv SetEnv UnsetEnv Apache Module mod_example Compiling the example module Using the mod_example Module Example Apache Module mod_expires 交替間隔語法 ExpiresActive ExpiresByType ExpiresDefault Apache Module mod_ext_filter 舉例 ExtFilterDefine ExtFilterOptions Apache Module mod_file_cache Using mod_file_cache CacheFile MMapFile Apache Module mod_filter Smart Filtering Filter Declarations Configuring the Chain Examples Protocol Handling FilterChain FilterDeclare FilterProtocol FilterProvider FilterTrace Apache Module mod_headers 處理順序 前處理和后處理 舉例 Header RequestHeader Apache Module mod_ident IdentityCheck IdentityCheckTimeout Apache Module mod_imagemap New Features Imagemap File Example Mapfile Referencing your mapfile ImapBase ImapDefault ImapMenu Apache Module mod_include Enabling Server-Side Includes PATH_INFO with Server Side Includes Basic Elements Include Variables Variable Substitution Flow Control Elements SSIEndTag SSIErrorMsg SSIStartTag SSITimeFormat SSIUndefinedEcho XBitHack Apache Module mod_info 安全問題 選擇哪些信息可以被顯示 已知的局限 AddModuleInfo Apache Module mod_isapi 用法 附加注釋 程序員注記 ISAPIAppendLogToErrors ISAPIAppendLogToQuery ISAPICacheFile ISAPIFakeAsync ISAPILogNotSupported ISAPIReadAheadBuffer Apache Module mod_ldap 示例配置 LDAP 連接池 LDAP 緩沖 使用SSL/TLS SSL/TLS 證書 LDAPCacheEntries LDAPCacheTTL LDAPConnectionTimeout LDAPOpCacheEntries LDAPOpCacheTTL LDAPSharedCacheFile LDAPSharedCacheSize LDAPTrustedClientCert LDAPTrustedGlobalCert LDAPTrustedMode LDAPVerifyServerCert Apache Module mod_log_config 定制日志文件格式 安全考慮 BufferedLogs CookieLog CustomLog LogFormat TransferLog Apache Module mod_log_forensic 定制日志文件格式 安全考慮 ForensicLog Apache Module mod_logio 定制日志文件格式 Apache Module mod_mem_cache MCacheMaxObjectCount MCacheMaxObjectSize MCacheMaxStreamingBuffer MCacheMinObjectSize MCacheRemovalAlgorithm MCacheSize Apache Module mod_mime 帶多擴展名的文件 內(nèi)容編碼 字符集和語言 AddCharset AddEncoding AddHandler AddInputFilter AddLanguage AddOutputFilter AddType DefaultLanguage ModMimeUsePathInfo MultiviewsMatch RemoveCharset RemoveEncoding RemoveHandler RemoveInputFilter RemoveLanguage RemoveOutputFilter RemoveType TypesConfig Apache Module mod_mime_magic "Magic文件"的格式 性能問題 注意 MimeMagicFile Apache Module mod_negotiation 類型表 MultiViews CacheNegotiatedDocs ForceLanguagePriority LanguagePriority Apache Module mod_nw_ssl NWSSLTrustedCerts NWSSLUpgradeable SecureListen Apache Module mod_proxy 正向和反向代理 簡單示例 控制對代理服務(wù)器的訪問 緩慢啟動 局域網(wǎng)代理 協(xié)議調(diào)整 請求體 AllowCONNECT NoProxy <Proxy> ProxyBadHeader ProxyBlock ProxyDomain ProxyErrorOverride ProxyIOBufferSize <ProxyMatch> ProxyMaxForwards ProxyPass ProxyPassReverse ProxyPassReverseCookieDomain ProxyPassReverseCookiePath ProxyPreserveHost ProxyReceiveBufferSize ProxyRemote ProxyRemoteMatch ProxyRequests ProxyTimeout ProxyVia Apache Module mod_proxy_ajp Overview of the protocol Basic Packet Structure Request Packet Structure Response Packet Structure Apache Module mod_proxy_balancer Load balancer scheduler algorithm Request Counting Algorithm Weighted Traffic Counting Algorithm Enabling Balancer Manager Support Apache Module mod_proxy_connect Apache Module mod_proxy_ftp 為什么xxx類型的文件不能從FTP下載? 如何強制文件xxx使用FTP的ASCII形式下載? 我如何使用FTP上傳? 我如何能訪問我自己home目錄以外的FTP文件? 我如何才能在瀏覽器的URL框中隱藏FTP的明文密碼? Apache Module mod_proxy_http Apache Module mod_rewrite 特殊字符的引用 環(huán)境變量 實用方案 RewriteBase RewriteCond RewriteEngine RewriteLock RewriteLog RewriteLogLevel RewriteMap RewriteOptions RewriteRule Apache Module mod_setenvif BrowserMatch BrowserMatchNoCase SetEnvIf SetEnvIfNoCase Apache Module mod_so 為Windows創(chuàng)建可加載模塊 LoadFile LoadModule Apache Module mod_speling CheckSpelling Apache Module mod_ssl 環(huán)境變量 Custom Log Formats SSLCACertificateFile SSLCACertificatePath SSLCADNRequestFile SSLCADNRequestPath SSLCARevocationFile SSLCARevocationPath SSLCertificateChainFile SSLCertificateFile SSLCertificateKeyFile SSLCipherSuite SSLCryptoDevice SSLEngine SSLHonorCipherOrder SSLMutex SSLOptions SSLPassPhraseDialog SSLProtocol SSLProxyCACertificateFile SSLProxyCACertificatePath SSLProxyCARevocationFile SSLProxyCARevocationPath SSLProxyCipherSuite SSLProxyEngine SSLProxyMachineCertificateFile SSLProxyMachineCertificatePath SSLProxyProtocol SSLProxyVerify SSLProxyVerifyDepth SSLRandomSeed SSLRequire SSLRequireSSL SSLSessionCache SSLSessionCacheTimeout SSLUserName SSLVerifyClient SSLVerifyDepth Apache Module mod_status Enabling Status Support 自動更新 Machine Readable Status File ExtendedStatus Apache Module mod_suexec SuexecUserGroup Apache Module mod_unique_id Theory Apache Module mod_userdir UserDir Apache Module mod_usertrack Logging 2-digit or 4-digit dates for cookies? CookieDomain CookieExpires CookieName CookieStyle CookieTracking Apache Module mod_version <IfVersion> Apache Module mod_vhost_alias 目錄名稱的轉(zhuǎn)換 示例 VirtualDocumentRoot VirtualDocumentRootIP VirtualScriptAlias VirtualScriptAliasIP 開發(fā)者文檔 Overview Topics External Resources Apache API notes Basic concepts How handlers work Resource allocation and resource pools Configuration Debugging Memory Allocation in APR Available debugging options Allowable Combinations Activating Debugging Options Documenting Apache 2.0 Apache 2.0 Hook Functions Creating a hook function Hooking the hook Converting Modules from Apache 1.3 to Apache 2.0 The easier changes ... The messier changes... Request Processing in Apache 2.0 The Request Processing Cycle The Request Parsing Phase The Security Phase The Preparation Phase The Handler Phase How Filters Work in Apache 2.0 Filter Types How are filters inserted? Asis Explanations 詞匯和索引 詞匯表 模塊索引 指令索引 指令速查 譯者聲明
characters

在Microsoft Windows中使用Apache

此文檔闡述了如何在Microsoft Windows平臺上安裝、配置和運行Apache 2.0 。 如果你發(fā)現(xiàn)了bug,或者希望以其他方式作出貢獻,請使用我們的bug報告頁面。

本文檔的大多數(shù)內(nèi)容假定你是從一個二進制發(fā)布版安裝Apache到Windows上。 如果你想自己編譯Apache(可能有助于開發(fā)和跟蹤bugs),參看編譯Windows下的Apache。

基于當(dāng)前的Windows版本狀況,本文檔使用到的縮寫及其意義解釋包括:

  • Windows NT: 指所有基于NT核心的Microsoft Windows操作系統(tǒng)的版本,包括Windows NT, Windows 2000, Windows XP, Windows.NET Server 2003及后續(xù)版本。
  • Windows 9x: 指所有定位于家庭使用的Microsoft Windows操作系統(tǒng)的版本,包括 Windows 95 , Windows 98, Windows ME 。

對操作系統(tǒng)的要求

Apache 2.0被設(shè)計為在Windows NT上運行。它的二進制安裝程序只能在x86處理器上運行,比如Intel和AMD的芯片。Apache可能也能夠運行在Windows 9x上,但是并沒有經(jīng)過測試, 也不建議在實際工作的系統(tǒng)上這樣使用。

任何情況下都必須確保TCP/IP網(wǎng)絡(luò)協(xié)議已經(jīng)安裝。如果在Windows 95上運行,必須安裝"Winsock2"升級補丁。 "Winsock2" for Windows 95可以在這里下載。

如果在NT 4.0上運行,建議安裝Service Pack 6 ,因為Service Pack 4有眾所周知的TCP/IP和Winsock完整性的問題,在以后的Service Pack中解決了這些問題。

下載 Apache for Windows

關(guān)于Apache最新版本的有關(guān)信息可以在http://httpd.apache.org/download.cgi上找到。那里會列出當(dāng)前發(fā)行版本、 所有最近的alpha和beta測試版本以及鏡像web站點和匿名ftp服務(wù)器的信息。

你應(yīng)該下載帶有.msi擴展名的Apache for Windows版本。 這是一個單一的Microsoft Installer文件,包含了Apache ,可以立即安裝并運行。 還有一個單獨的.zip文件只打包了源碼, 可以用Microsoft Visual C++ (Visual Studio)工具來編譯。

安裝 Apache for Windows

Apache的安裝需要有Microsoft Installer 1.2或更高版本。 在Windows 9x中,你可以從這里升級Microsoft Installer到2.0 ,在Windows NT 4.0和2000中,2.0的升級版在這里。Windows XP/2003不需要這個升級。

注意,使用這個安裝包不能在同一個機器上安裝兩套Apache 2.0。 但是,在同一個機器上,安裝一個1.3系列一個2.0系列的Apache則沒有問題。 如果你需要在同一個機器上安裝兩套不同的2.0版本, 則必須用代碼編譯和安裝Apache

運行已下載的上述Apache .msi文件。安裝程序會要求提供下列信息:

  1. Network Domain 你的服務(wù)器已經(jīng)或者將要注冊的DNS域名。比如你的服務(wù)器的全稱DNS域名是server.mydomain.net ,你應(yīng)當(dāng)在這里輸入:mydomain.net

  2. Server Name 你的服務(wù)器的全稱DNS域名,如上情況你應(yīng)當(dāng)在這里輸入:server.mydomain.net

  3. Administrator's Email Address 服務(wù)器管理員的email地址。這個地址將會在默認的出錯頁面上顯示給客戶端。

  4. For whom to install Apache 如果你希望Apache在80端口監(jiān)聽,并被安裝為服務(wù)(即使無人登陸,Apache仍將運行),就選擇"for All Users, on Port 80, as a Service - Recommended";如果你希望將Apache安裝為個人試驗使用,或者已經(jīng)有一個運行于80端口的WWW服務(wù)器,就選擇"only for the Current User, on Port 8080, when started Manually"。

  5. The installation type 選擇Typical會安裝除開發(fā)模塊需要使用的源碼和庫以外的所有內(nèi)容。選擇Custom可以自定義安裝哪些項目。完整安裝大約需要13MB磁盤空間,這其中并不包含你的網(wǎng)站文件所用空間。

  6. Where to install 安裝Apache的文件夾,默認為C:\Program Files\Apache Group文件夾下的Apache2子文件夾。

安裝期間,Apache將會配置你所選擇的安裝目錄下的conf文件夾中的文件。 但是如果那個目錄下已有同名文件存在,原有文件將不會被覆蓋, 而相應(yīng)的新文件將會被加上.default擴展名。 所以,舉例來說,如果conf\httpd.conf已經(jīng)存在,那么不會對它做任何改變, 而新版本conf\httpd.conf的內(nèi)容將會被寫入文件conf\httpd.conf.default 。 安裝完成以后你應(yīng)該檢查.default文件中的內(nèi)容看看有沒有不同, 如果必要,更新你原有的配置文件。

而且,如果你已經(jīng)有一個名為htdocs\index.html的文件,它不會被覆蓋掉 (也不會安裝index.html.default文件)。 這意味著你在一個舊版本Apache上安裝新版本是安全的 (但是你必須在安裝之前首先停掉原有服務(wù)器然后在安裝完成后重新啟動它)。

安裝Apache以后,你應(yīng)該編輯conf目錄下的配置文件。這些文件已在安裝期間被配置好以便Apache能夠從安裝目錄運行,文檔目錄被配置為安裝目錄下的子目錄htdocs 。在你開始真正使用之前還有很多選項需要設(shè)置。但是為了盡快開始,可以使用安裝時自動配置的配置文件。

配置 Apache for Windows

與Unix系統(tǒng)下的版本一樣,Apache使用conf目錄下的文件進行配置,但是Windows版本有幾個不同的指令,參見指令索引察看全部可用指令。

Apache for Windows主要的不同點是:

  • 因為Apache for Windows是多線程的,它并不像Unix版本那樣為每個請求使用一個單獨的進程。 而是通常運行兩個Apache進程:一個父進程,和一個處理請求的子進程。在子進程內(nèi)部由多個單獨的線程來處理每個請求。

    因此與進程管理相關(guān)的指令是不同的:

    MaxRequestsPerChild就像Unix版本中的指令一樣,這條指令控制一個進程退出前將為多少個請求提供服務(wù)。 然而,與Unix不同的是,一個進程將為所有請求而不是只為一個請求服務(wù),因此如果設(shè)置這條指令,建議將它設(shè)為一個很大的值。默認設(shè)置 MaxRequestsPerChild 0 使得進程從不退出。

    警告: 啟動新的子進程時將會重新讀入服務(wù)器配置文件。如果你修改了httpd.conf ,新的子進程將有可能不能啟動或者可能得到預(yù)期之外的結(jié)果。

    ThreadsPerChild是一條新的指令,用來告訴服務(wù)器應(yīng)該使用多少個線程,指明了服務(wù)器可以立刻處理的最大連接數(shù);如果你的站點有大量的點擊,請確認你設(shè)置了足夠大的值。推薦的默認設(shè)置是 ThreadsPerChild 50 。

  • 接收文件名作為參數(shù)的指令必須使用Windows文件名而不是Unix文件名。 但是,因為Apache內(nèi)部使用Unix風(fēng)格的名字,你必須使用正斜杠而不是反斜杠。可以使用盤符;如果省略盤符,將假定使用Apache可執(zhí)行文件所在盤符。

  • Apache for Windows具有運行時裝入模塊的能力,不需要重新編譯。如果Apach在正常情況下編譯,它會在\Apache2\modules目錄下安裝許多可選模塊。 要激活它們或其他模塊,必須使用新的LoadModule指令。 舉例來說,要激活狀態(tài)模塊,使用下列指令(除了access.conf中的狀態(tài)激活指令以外):

    LoadModule status_module modules/mod_status.so

    也可使用創(chuàng)建可加載模塊中的信息。

  • Apache也可以加載ISAPI(Internet Server Applications Programming Interface)擴展,例如被Microsoft IIS服務(wù)器和其他一些Windows服務(wù)器所使用的。這里有更多相關(guān)信息。注意Apache不能加載ISAPI 過濾器。

  • 當(dāng)運行CGI腳本時,Apache查找腳本解釋器是由ScriptInterpreterSource指令配置的。

  • 由于在Windows下管理具有像.htaccess這樣名字的文件是很困難的,你會發(fā)現(xiàn)在配置文件中使用AccessFilename指令改變它的文件名是很有用的。

  • 在Windows NT上,Apache啟動時發(fā)生的錯誤將會記入Windows事件日志(event log)。這個機制將在Apache尚不能使用error.log文件的時候運作。你可以通過"事件查看器"的MMC接口查看Windows事件日志。

    注意,在Windows 9x上不存在事件日志機制,因此無法記錄啟動錯誤。

以服務(wù)方式運行Apache for Windows

Apache僅能夠在Windows NT上作為服務(wù)運行。

你可以選擇在安裝Apache時自動將其安裝為一個服務(wù)。如果你選擇"for all users",那么Apache將會被安裝為服務(wù)。如果你選擇了"only for the Current User",你可以在安裝后手動將Apache注冊為服務(wù)。注意,你必須是Administrators組的成員才能成功注冊服務(wù)。

使用Apache Service Monitor工具,可以查看和管理你所在網(wǎng)絡(luò)上的所有機器上安裝的Apache服務(wù)的狀態(tài)。為了能夠使用這個工具管理Apache服務(wù),你必須首先自動或手動安裝Apache服務(wù)。

你可以在Apache安裝目錄的bin子目錄下,使用如下命令將Apache安裝為Windows NT服務(wù):

apache -k install

如果你想指定服務(wù)的名稱,可以使用下面的命令。當(dāng)你在同一機器上安裝多個Apache服務(wù)時,你必須為它們指定不同的名字。

apache -k install -n "服務(wù)名"

如果你想為不同名稱的服務(wù)使用不同的配置文件,則安裝時需要指定配置文件:

apache -k install -n "服務(wù)名" -f "c:\files\my.conf"

如果你使用的是第一個命令,也就是除 -k install 外沒有其它命令行參數(shù),那么被安裝的服務(wù)名稱將是:Apache2 ,配置文件將使用conf\httpd.conf 。

要移除一個Apache服務(wù)很簡單:

apache -k uninstall

或者使用下述命令移除特定名稱的Apache服務(wù):

apache -k uninstall -n "服務(wù)名"

通常,啟動、重啟、關(guān)閉Apache服務(wù)的方法是使用Apache Service Monitor工具,另外也可以使用控制臺命令:NET START Apache2NET STOP Apache2 或者通過Windows服務(wù)控制面板。在啟動Apache服務(wù)之前,你應(yīng)當(dāng)使用下面的命令檢查一下配置文件的正確性:

apache -n "服務(wù)名" -t

你可以通過命令行開關(guān)來控制Apache服務(wù)。要啟動一個已經(jīng)安裝的Apache服務(wù),可以使用:

apache -k start

要停止一個已經(jīng)安裝的Apache服務(wù),可以使用:

apache -k stop

apache -k shutdown

要重啟一個運行中的Apache服務(wù),強制它重新讀取配置文件,可以使用:

apache -k restart

默認情況下,Apache服務(wù)將被注冊為以本地系統(tǒng)用戶(LocalSystem帳號)身份運行。LocalSystem帳號沒有網(wǎng)絡(luò)權(quán)限,不能通過任何Windows安全機制訪問網(wǎng)絡(luò),包括文件系統(tǒng)、命名管道、DCOM或secure RPC ,但是它對于本地資源卻擁有廣泛的特權(quán)。

永遠不要把網(wǎng)絡(luò)權(quán)限授予LocalSystem帳號!如果你需要Apache能夠訪問網(wǎng)絡(luò)資源,最好按照下述方法為Apache另外建立一個單獨的帳號。

你應(yīng)該建立一個單獨的帳號來運行Apache服務(wù)。特別是在必須通過Apache訪問網(wǎng)絡(luò)資源的時候,我們更加強烈建議你這樣做。

  1. 創(chuàng)建一個普通域用戶帳號,并牢記對應(yīng)的密碼。
  2. 授予這個新建的帳號作為服務(wù)登陸作為操作系統(tǒng)一部分運行權(quán)限。在Windows 2000/XP/2003上你可以使用"組策略"或通過"本地安全策略"的MMC接口來完成這個操作。
  3. 確認新建的帳號是Users組的一個成員。
  4. 確認新建的帳號具有讀取和執(zhí)行(RX)所有文檔和腳本目錄(例如:htdocscgi-bin)的權(quán)限。
  5. 確認新建的帳號對Apache的logs目錄具有讀/寫/刪除(RWD)的權(quán)限。
  6. 確認新建的帳號對Apache.exe二進制文件具有讀取和執(zhí)行(RX)的權(quán)限。
一個很好的實踐經(jīng)驗是賦予運行Apache服務(wù)的用戶讀取和執(zhí)行(RX)整個Apache2目錄的權(quán)限,并且對logs子目錄具有讀/寫/刪除(RWD)的權(quán)限。

如果你允許使用這個帳號作為一個用戶和服務(wù)登錄,你就可以用這個帳號登錄上去測試執(zhí)行腳本、讀取web頁的權(quán)限,還可以通過控制臺窗口啟動Apache 。如果這樣工作正常,你又執(zhí)行了上述的操作,那么Apache就能夠正常地作為服務(wù)運行了。

錯誤代碼2186是一個很好的提示,說明你需要檢查"登陸為"選項,因為服務(wù)器不能訪問必要的網(wǎng)絡(luò)資源。

當(dāng)啟動Apache服務(wù)時你可能會遇到一個來自Windows服務(wù)管理器的錯誤信息。 例如,如果你想使用控制面板中的服務(wù)小程序啟動Apache,可能會得到下面這條信息:

Could not start the Apache2 service on \\COMPUTER
Error 1067; The process terminated unexpectedly.

只要啟動Apache出錯你就會得到這個錯誤信息。為了弄清是什么引起了錯誤, 你應(yīng)該遵循作為控制臺程序運行Apache中的建議。

對于讓Apache在Windows 9x下以類似Windows NT服務(wù)的方式運行有一些支持。都是高度試驗性的,即使能夠工作,Apache軟件基金會將不會證實其可靠性和未來的支持。繼續(xù)進行你自己的冒險吧!

這兩種"服務(wù)"有相當(dāng)大的區(qū)別:

如果你輸入下列命令,Apache會嘗試啟動,如果成功他將在后臺運行:

Apache -n "服務(wù)名" -k start

例如,通過桌面的快捷方式運行,如果服務(wù)啟動成功一個控制臺窗口會快速閃過并立刻消失。如果啟動時Apache檢測到比如httpd.conf文件中有不正確的設(shè)置這樣的問題,則控制臺窗口會保持可見。這樣將顯示一個有助于追蹤錯誤原因的錯誤信息。

Windows 9x不支持NET START或者NET STOP命令,因此你在命令中必須使用Apache的服務(wù)控制選項。你可能希望為每個命令設(shè)置一個快捷方式以便你能夠只需要從開始菜單或者桌面一點就能執(zhí)行所需的操作。

Apache和Windows 9x沒有提供讓Apache服務(wù)以特定的具有網(wǎng)絡(luò)權(quán)限的用戶身份運行的支持。實際上,Windows 9x在本地機器上根本沒有提供安全性。這就是Apache軟件基金會從不支持使用Windows 9x作為公用httpd服務(wù)器的原因。這個便利存在的唯一目的是協(xié)助用戶開發(fā)web內(nèi)容和學(xué)習(xí)Apache服務(wù)器,或者也許在一個安全的、私有的網(wǎng)絡(luò)上充當(dāng)intranet服務(wù)器。

作為控制臺程序運行Apache

雖然通常推薦將Apache作為服務(wù)來運行,但是在某些情況下從命令行運行反而更加容易。在Windows 9x上,從命令行運行Apache是推薦的方法,因為這些系統(tǒng)中缺乏可靠的服務(wù)支持。

可以使用下列命令將Apache作為控制臺程序從命令行運行:

apache

Apache將會一直保持運行,直到被Ctl+C組合鍵中斷。

你還可以在安裝后通過 開始按鈕 --> 程序 --> Apache HTTP Server 2.2.xx --> Control Apache Server 在控制臺中運行Apache 。這將會打開一個控制臺窗口并在其中啟動Apache 。如果你沒有將Apache安裝為服務(wù),該窗口將一直保持打開,直到被Ctl+C組合鍵中斷,并在幾秒鐘后退出。如果你已經(jīng)將Apache安裝為服務(wù),那么那個快捷方式將會啟動服務(wù),如果Apache服務(wù)已經(jīng)啟動了,則什么也不做。

你可以在另外一個控制臺窗口中輸入以下命令停止正在運行的Apache服務(wù):

apache -k shutdown

這種方法比使用Ctl+C組合鍵更好,因為它可以讓Apache完成所有當(dāng)前的操作并且優(yōu)雅的清理所占用的資源。

Apache可以被從新啟動,這將導(dǎo)致它重新讀取配置文件,重啟前所有正在進行的操作都將不被打斷的完成??梢允褂孟旅娴拿钪貑pache :

apache -k restart

請熟悉Unix版本Apache的用戶注意,這些命令對應(yīng)于Unix命令 kill -TERM pidkill -USR1 pid 。命令中之所以使用 -k 選項,就是為了提醒用戶這是源自Unix下的kill命令。

如果Apache控制臺窗口在啟動后出乎意料的立即關(guān)閉,請打開一個新的控制臺窗口,切換到Apache的安裝目錄下bin子目錄中,運行apache命令并讀取錯誤信息。然后再到日志目錄中查看error.log文件以尋找可能的配置錯誤。如果你的Apache采用的是默認安裝,這些命令應(yīng)當(dāng)是:

c:
cd "\Program Files\Apache Group\Apache2\bin"
apache

等候Apache停止,或者使用Ctl+C組合鍵,然后輸入下列內(nèi)容:

cd ..\logs
more < error.log

可以在命令行中為Apache指定一個配置文件,有兩種方法可以在命令行中指定配置文件:

  • -f 可以指定一個絕對路徑或相對路徑的配置文件:

    apache -f "c:\my server files\anotherconfig.conf"

    apache -f files\anotherconfig.conf

  • -n 可以指定已安裝的Apache服務(wù)所使用的配置文件:

    apache -n "服務(wù)名"

在這兩種情況下,必須在配置文件中設(shè)置正確的ServerRoot值。

如果你沒有使用 -f-n 指定配置文件的路徑,Apache將會使用硬編碼在服務(wù)器內(nèi)的路徑,比如:conf\httpd.conf 。這個內(nèi)置的路徑是相對于安裝目錄的,要想檢查這個內(nèi)置的路徑,你可以通過 -V 開關(guān)調(diào)用Apache ,查看名為SERVER_CONFIG_FILE的變量值:

apache -V

Apache將會按照下列順序檢查ServerRoot值:

  1. 通過 -C 命令行開關(guān)指定的ServerRoot值。
  2. 通過 -d 命令行開關(guān)指定的值。
  3. 當(dāng)前工作目錄。
  4. 安裝二進制文件時在注冊表中登記的項目。
  5. 編譯進二進制文件的值,該值默認為:/apache ,你可以使用 apache -V 命令查看顯示出來的HTTPD_ROOT變量的值。

在安裝過程中,將會在注冊表中新建一個版本特定的注冊表鍵。這個鍵的位置取決于安裝類型。如果你選擇的是"for all users",那么將位于HKEY_LOCAL_MACHINE分支下,如下所示:

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Group\Apache\2.0.43

如果你選擇的是"for the current user only",那么將位于HKEY_CURRENT_USER分支下,其中的內(nèi)容取決于當(dāng)前登陸的用戶,如下所示:

HKEY_CURRENT_USER\SOFTWARE\Apache Group\Apache\2.0.43

這個鍵已經(jīng)被編譯進了服務(wù)器,使得你可以測試新版本而又不影響老版本。當(dāng)然,你必須注意不要在同一個目錄中安裝兩個不同的版本。

如果你沒有使用二進制安裝,在某些情況下Apache將會抱怨注冊表鍵丟失。如果在這種情況下服務(wù)器仍然可以找到正確的配置文件,那么就可以安全的忽略它。

這個注冊表鍵其實就是包含conf子目錄的ServerRoot目錄。Apache將要從中讀取httpd.conf文件。如果該配置文件中又包含了一個ServerRoot指令,并且指向的目錄與注冊表中登記的不同,Apache將以配置文件中的指令為準(zhǔn)。如果你復(fù)制了配置文件或者整個Apache目錄到一個新的位置,你要千萬記得修改httpd.conf中的ServerRoot指令,使其指向正確的位置。

安裝的測試

啟動Apache運行以后(不管是控制臺窗口還是作為服務(wù)), 它會在80端口上進行監(jiān)聽(除非你改變了配置文件中的Listen指令。 要連接到服務(wù)器訪問默認頁面,啟動一個瀏覽器并輸入下列URL :

http://localhost/

應(yīng)該出現(xiàn)一個歡迎頁面,并且頁面上有到Apache用戶手冊的鏈接。 如果什么都沒有發(fā)生或是得到了一個錯誤,檢查logs子文件夾中的 error.log文件。如果你的主機沒有聯(lián)網(wǎng)或者DNS配置有嚴重問題,你也許需要輸入這樣的URL :

http://127.0.0.1/

如果你將Apache配置為在非80端口監(jiān)聽(比如:8080),你應(yīng)當(dāng)使用下面的URL明確指定端口:

http://127.0.0.1:8080/

一旦你的基本配置可以工作了,你應(yīng)該編輯conf目錄下的文件來恰當(dāng)?shù)嘏渲肁pache 。 此外,如果你改變了作為NT服務(wù)運行的Apache的配置,你應(yīng)該首先嘗試從命令行啟動來保證能夠正確地啟動Apache服務(wù)。

因為Apache不能與其他TCP/IP應(yīng)用程序共享同一端口,你可能需要先停止或者卸載或者重新配置某些特定的服務(wù)。這包括(但不限于)別的web服務(wù)器和BlackIce那樣的防火墻。如果你只能在禁止其他服務(wù)的情況下啟動Apache ,那么需要重新配置Apache或者其他程序使它們不監(jiān)聽同一個TCP/IP端口。

Previous article: Next article: