Apache 是一個開源,跨平台且完全免費的命令行軟件,旨在在任何類似Linux和UNIX的操作系統上實現Web服務器,以通過HTTP和HTTPS協議提供文件
世界上最常用的Web服務器軟件
它是世界上最常用的網絡服務器軟件,為互聯網上的數十萬個網站提供服務。它是一種非常安全,易於維護,高效,低資源,可通過插件擴展。 Apache始終與最新的HTTP標準兼容。
雖然Apache只能由熟練的系統管理員在設計用作服務器的計算機上安裝,但它也可以由個人計算機上的常規用戶安裝,僅用於測試目的,例如網頁設計或Web應用程序開發。
Apache入門
安裝Apache的老派方式,包括下載最新的穩定源包(請注意,同時維護多個穩定的分支,例如2.2.x或2.4.x),將其保存在您的計算機上,以及使用存檔管理器實用程序提取其內容。
打開終端模擬器應用程序,使用‘ cd’移動到解壓縮的存檔文件的位置。命令(例如cd /home/softoware/httpd-2.4.10)並執行‘ ./ configure && make’命令為您的操作系統/硬件架構配置和編譯軟件(目前支持32位和64位CPU架構)。
然後,通過運行&suquo make install’系統安裝它。命令。安裝完成後,請查看位於/usr/local/apache2/conf/httpd.conf或/usr/apache2/conf/httpd.conf的默認配置文件,並根據需要調整設置(請參閱項目主頁)詳情)。 httpd服務通常會在啟動時自動啟動,如果您已將其添加到此版本中的
新增內容:
- 新功能包括可加載MPM,OCSP支持的主要改進,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新表達式解析器和小對象緩存API。
版本2.4.33中的新功能:
- 新功能包括可加載MPM,OCSP支持的主要改進,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新表達式解析器和小對象緩存API。
版本中的新功能:
- 新功能包括可加載MPM,OCSP支持的主要改進,mod_lua ,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.27中的新功能:
- 新功能包括可加載MPM,OCSP的主要改進支持,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.25中的新功能:
- 新功能包括可加載MPM,OCSP的主要改進支持,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.23中的新功能:
- 新功能包括可加載MPM,OCSP支持的主要改進,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新表達式解析器和小對象緩存API。
版本2.4.20中的新功能:
- 新功能包括可加載MPM,OCSP的主要改進支持,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.18中的新功能:
- 新功能包括可加載MPM,OCSP的主要改進支持,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.17中的新功能:
- 新功能包括可加載MPM,OCSP的主要改進支持,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新的表達式解析器和小型對象緩存API。
版本2.4.16中的新功能:
- 新功能包括可加載MPM,OCSP支持的主要改進,mod_lua,動態反向代理配置,改進的身份驗證/授權,FastCGI代理,新表達式解析器和小對象緩存API。
版本2.4.12中的新功能:
- 此版本的Apache是我們最新的GA版本Apache HTTPD的新一代2.4.x分支代表了該項目十五年的創新,並推薦用於以前的所有版本。
- 此版本的Apache主要是安全和錯誤修復版本。
版本2.4.10中的新功能:
- 此版本的Apache主要是安全性,功能和錯誤修復版本:
- CVE-2014-0117 mod_proxy:修復連接標頭處理中的崩潰,該標頭處理允許針對具有線程MPM的反向代理進行拒絕服務攻擊。
- CVE-2014-3523修復WinNT MPM中的內存消耗拒絕服務(用於所有Windows安裝)。解決方法:AcceptFilter {none | connect}
- CVE-2014-0226修復記分板處理中的競爭條件,這可能導致堆緩衝區溢出。
- CVE-2014-0118 mod_deflate:DEFLATE輸入過濾器(膨脹請求主體)現在限制了膨脹的請求主體的長度和壓縮比,以避免通過高度壓縮的主體拒絕服務。請參閱DeflateInflateLimitRequestBody,DeflateInflateRatioLimit和DeflateInflateRatioBurst指令。
- CVE-2014-0231 mod_cgid:針對不消耗stdin的CGI腳本修復拒絕服務,這可能導致延遲的HTTPD子進程填滿記分板並最終掛起服務器。默認情況下,客戶端I / O超時(Timeout指令)現在適用於與腳本的通信。 CGIDScriptTimeout指令可用於設置與腳本通信的不同超時。
- 此版本中還有一些令人興奮的新功能,包括;
- 代理FGI和websockets改進
- 通過處理程序的代理功能
- 更好地控制RewriteRules的範圍
- Unix域套接字(UDS)支持mod_proxy後端。
- 支持mod_socache_shmcb 的更大共享內存大小
- mod_lua和mod_ssl增強功能
- 支持LocationMatch,DirectoryMatch,FilesMatch和ProxyMatch指令中的命名組和反向引用。
版本2.2.26中的新功能:
- mod_dav:dav_resource-> uri被視為未編碼。這是2.2.25 PR 55397中引入的不必要的ABI更改。
- mod_dav:不要針對COPY源URI的父集合驗證鎖。 PR 55304。
- mod_ssl:針對不區分大小寫的Host頭檢查SNI主機名。 PR 49491。
- mod_ssl:啟用對ECC密鑰和ECDH密碼的支持。針對OpenSSL 1.0.0b3進行了測試。
- mod_ssl:將SSLCompression的默認值更改為關閉,因為壓縮會導致大多數設置出現安全問題。 (所謂的“CRIME”攻擊)。
- mod_ssl:當OpenSSL不包含對SSLv2的支持時修復編譯錯誤。問題在2.2.25中引入。 PR 55194。
- mod_dav:修復XML和Location標頭中URI的雙重編碼(由2.2.25中的無意識ABI更改引起)。 PR 55397。
版本2.4.7中的新功能:
- 事件MPM現在需要APR 1.5.0或更高版本。
- slotmem_shm:錯誤檢測。 [Jim Jagielski]
- 事件:使用skiplist數據結構。 [Jim Jagielski]
- mpm_unix:添加ap_mpm_podx_ *實現以避免代碼重複並對齊w / trunk。 [Jim Jagielski]
- 修復有效MaxMemFree和ThreadStackSize指令的潛在拒絕。 [Mike Rumph]
- mod_proxy_fcgi:刪除所有envvars編碼長度的64K限制。將省略編碼長度超過16K的單個envvar。 [傑夫特拉威克]
- mod_proxy_fcgi:處理在數據包之間拆分的讀取協議數據。 [傑夫特拉威克]
- mod_ssl:通過允許通過SSLCertificateFile配置自定義參數,以及為1024/2048/3072/4096位添加標準化DH參數,改進臨時DH和ECDH密鑰的處理。除非配置了自定義參數,否則將根據證書的RSA / DSA密鑰大小應用標準化參數。 [卡斯帕品牌]
- mod_ssl,configure:需要OpenSSL 0.9.8a或更高版本。 [卡斯帕品牌]
- mod_ssl:使用臨時RSA密鑰刪除對導出級密碼的支持,並無條件地禁用aNULL,eNULL和EXP密碼(不能通過SSLCipherSuite覆蓋)。 [卡斯帕品牌]
- 為Windows添加基於cmake的實驗構建系統。 [Jeff Trawick,Tom Donovan]
- 事件MPM:修復可能的崩潰(第三方模塊訪問c-> sbh)或偶爾錯過mod_status更新以加載一些keepalive請求。 [Eric Covener]
- mod_authn_socache:支持socache提供程序的可選初始化參數。 [Chris Darroch]
- mod_session:重置會話保存的max-age。 PR 47476. [Alexey Varlamov]
- mod_session:解析SessionHeader指令指定的標頭值後,從響應中刪除該值。 PR 55279. [Graham Leggett]
- mod_headers:使用Header編輯時允許替換字符串中的格式說明符。 [Daniel Ruggeri]
- mod_dav:dav_resource-> uri被視為未編碼。這是2.4.6中引入的不必要的ABI更改。 PR 55397。
- mod_dav:COPY源不需要鎖定令牌。 PR 55306。
- core:當發送被信號中斷時,例如來自現有的CGI進程,不要截斷輸出。 PR 55643. [Jeff Trawick]
- WinNT MPM:如果父進程崩潰或終止,則退出子進程。 [甲骨文公司]
- Windows:在某些錯誤日誌配置中正確無法丟棄stderr。 (錯誤消息AH00093)[Jeff Trawick]
- mod_session_crypto:允許使用exec:calls獲取會話加密密鑰。 [Daniel Ruggeri]
- 核心:在HTTP響應標頭中添加缺少的Reason-Phrase。 PR 54946. [Rainer Jung]
- mod_rewrite:重寫websocket-aware以允許代理。 PR 55598. [Chris Harris]
- mod_ldap:查找子組時,使用隱式objectClass = *而不是顯式cn = *過濾器。 [大衛霍伊斯]
- ab:添加等待時間,修復處理時間,並僅在出現錯誤時輸出寫入錯誤。 [Christophe Jaillet]
- worker MPM:如果子進程正在退出,則不要強制終止工作線程。 [甲骨文公司]
- core:apachectl -S兩次打印基於通配符名稱的虛擬主機。 PR54948 [Eric Covener]
- mod_auth_basic:添加AuthBasicUseDigestAlgorithm指令以允許將密碼從摘要遷移到基本身份驗證。 [Chris Darroch]
- ab:添加新的-l參數,以便不檢查響應的長度。這對動態頁面很有用。 PR9945,PR27888,PR42040 []當使用ErrorLogFormat時,禁止格式化寫入控制台的啟動消息。 [傑夫特拉威克]
- mod_auth_digest:當領域不匹配時更具體,因為尚未指定領域。 [Graham Leggett]
- mod_proxy:在平衡器管理器中添加註釋,說明是否將保留更改以及是否繼承了設置。 [Daniel Ruggeri,Jim Jagielski]
- mod_cache:當未提供主機名時,避免使用strcmp()崩潰。 [Graham Leggett]
- 核心:主要基於mod_proxy_fcgi為FastCGI添加util_fcgi.h及相關定義和支持例程。 [傑夫特拉威克]
- mod_headers:添加'標題註釋標題名稱註釋名稱',用於將響應標題值複製到註釋中。 [Eric Covener]
- mod_headers:將“setifempty”命令添加到Header和RequestHeader。 [Eric Covener]
- mod_logio:新格式說明符%S(sum),它是接收和發送字節計數的總和。 PR54015 [Christophe Jaillet]
- mod_deflate:在使用尾隨垃圾解壓縮請求主體時改進錯誤檢測:處理尾隨字節在同一個存儲桶中的情況。 [Rainer Jung]
- mod_authz_groupfile,mod_authz_user:將AH01671和AH01663的嚴重性從ERROR降低到DEBUG,因為這些模塊不知道mod_authz_core正在使用其AUTHZ_DENIED返回值做什麼。 [Eric Covener]
- mod_ldap:為LDAP重試添加TRACE5。 [Eric Covener]
- mod_ldap:在authn期間重試LDAP超時。 [Eric Covener]
- mod_ldap:更改“LDAPReferrals off”實際上將底層LDAP SDK選項設置為OFF,並引入“LDAPReferrals default”採取SDK默認,sans重新綁定身份驗證回調。 [Jan Kaluza]
- 核心:當客戶端中止連接時,在TRACE1上記錄消息。 [Eric Covener]
- WinNT MPM:如果無法識別Listen協議,請不要在子進程初始化期間崩潰。 [傑夫特拉威克]
- modules:修復一些編譯器警告。 [Guenter Knauf]
- 同步2.4和主幹 - 避免一些內存分配並在TRACE1未激活時工作 - 修復包含保護的錯誤 - 縮進 - 在刪除路徑之前不需要降低字符串,這只是浪費時間...... - 節省幾個週期[Christophe Jaillet]
- mod_filter:添加“change = no”作為FilterProtocol的原始標誌,刪除在註冊時設置的提供程序初始標誌。 [Eric Covener]
- core,mod_ssl:使模塊能夠將輪詢事件的意義從讀取轉換為寫入,反之亦然。這是允許mod_ssl充分利用事件MPM的一個步驟。 [Graham Leggett]
- Makefile.win:在調試版本安裝期間安裝正確的pcre DLL文件。 PR 55235. [Ben Reser]
- mod_ldap:修復潛在的內存洩漏或損壞。 PR 54936. [Zhenbo Xu]
- ab:處理T和X命令行選項時修復潛在的緩衝區溢出。 PR 55360. [Mike Rumph]
- fcgistarter:指定SO_REUSEADDR以允許在TIME_WAIT中啟動具有舊連接的服務器。 [傑夫特拉威克]
- 核心:添加open_htaccess鉤子,與dirwalk_stat和post_perdir_config(在2.4.5中引入)一起使用,允許在沒有補丁的情況下使用mpm-itk到httpd核心。 [Stefan Fritsch]
- support / htdbm:修復-t命令行開關的處理。 2.4.4中引入的回歸
版本2.4.1中的新功能:
- 核心增強功能:
- 運行時可加載MPM
- 現在可以在編譯時將多個MPM構建為可加載模塊。可以在運行時配置所選的MPM。
- 活動MPM
- 事件MPM不再是實驗性的,但現在完全支持。
- 異步支持
- 更好地支持異步讀/寫以支持MPM和平台。
- 每個模塊和每個目錄的LogLevel配置
- 現在可以按模塊和每個目錄配置LogLevel。在調試日誌級別之上添加了新級別trace1到trace8。
- 按請求配置部分
- ,和部分可用於根據每個請求標准設置配置。
- 通用表達式解析器
- 新的表達式解析器允許在SetEnvIfExpr,RewriteCond,Header等指令中使用通用語法指定複雜條件。
- KeepAliveTimeout(毫秒)
- 現在可以以毫秒為單位指定KeepAliveTimeout。
- NameVirtualHost指令
- 不再需要,現已棄用。
- 覆蓋配置
- 新的AllowOverrideList指令允許更細粒度的控制.htaccess文件中允許哪些指令。
- 配置文件變量
- 現在可以在配置中定義變量,如果在配置中的許多位置使用相同的值,則可以更清晰地表示。
- 減少內存使用量
- 儘管有許多新功能,但2.4.x使用的內存往往比2.2.x少。
- 新模塊:
- mod_proxy_fcgi
- mod_proxy的FastCGI協議後端
- mod_proxy_scgi
- mod_proxy的SCGI協議後端
- mod_proxy_express
- 為mod_proxy 提供動態配置的質量反向代理
- mod_remoteip
- 使用代理或負載均衡器通過請求標頭提供的IP地址列表替換請求的明顯客戶端遠程IP地址和主機名。
- mod_heartmonitor,mod_lbmethod_heartbeat
- 允許mod_proxy_balancer根據後端服務器上的活動連接數做出負載均衡決策。
- mod_proxy_html
- 以前是第三方模塊,它支持在反向代理情況下修復HTML鏈接,其中後端生成對代理的客戶端無效的URL。
- mod_sed
- mod_substitute的高級替換,允許使用sed的全部功能編輯響應正文。
- mod_auth_form
- 允許進行基於表單的身份驗證。
- mod_session
- 允許使用cookie或數據庫存儲保持客戶端的會話狀態。
- mod_allowmethods
- 新模塊,用於限制某些HTTP方法,而不會干擾身份驗證或授權。
- mod_lua
- 將Lua語言嵌入到httpd中,用於配置和小型業務邏輯功能。 (實驗)
- mod_log_debug
- 允許在請求處理的不同階段添加可自定義的調試日誌記錄。
- mod_buffer
- 提供緩衝輸入和輸出過濾器堆棧
- mod_data
- 將響應正文轉換為RFC2397數據網址
- mod_ratelimit
- 為客戶提供帶寬速率限制
- mod_request
- 提供過濾器以處理和提供HTTP請求正文
- mod_reflector
- 通過輸出過濾器堆棧提供請求體的反射作為響應。
- mod_slotmem_shm
- 提供基於插槽的共享內存提供程序(記分板)。
- mod_xml2enc
- 以前是第三方模塊,它支持基於libxml2(標記感知)的過濾器模塊的國際化。
- 模塊增強功能:
- mod_ssl的
- mod_ssl現在可以配置為使用OCSP服務器來檢查客戶端證書的驗證狀態。默認響應者是可配置的,以及是否更喜歡客戶端證書本身指定的響應者的決定。
- mod_ssl現在還支持OCSP裝訂,其中服務器主動獲取其證書的OCSP驗證,並在握手期間將其傳送給客戶端。
- mod_ssl現在可以配置為通過memcached 在服務器之間共享SSL會話數據
- 除了RSA和DSA之外,現在還支持EC密鑰。
- mod_proxy的
- 現在,ProxyPass指令在Location或LocationMatch塊中進行了最佳配置,與大量存在時相比,傳統的雙參數語法具有顯著的性能優勢。
- 現在可以配置用於代理請求的源地址。
- mod_proxy_balancer的
- 通過balancer-manager 為BalancerMembers更多運行時配置更改
- 可以在運行時通過balancer-manager 添加其他BalancerMembers
- Balancer參數子集的運行時配置
- 可以將BalancerMembers設置為'Drain',以便它們僅響應現有的粘性會話,從而使它們可以優雅地脫機。
- 重啟後,平衡器設置可以保持不變。
- mod_cache的
- mod_cache現在可以緩存HEAD請求。
- 如果可能,現在可以為每個目錄設置mod_cache指令,而不是每個服務器。
- 可以自定義緩存URL的基本URL,以便緩存群集可以共享相同的端點URL前綴。
- mod_cache現在能夠在後端不可用時提供過時的緩存數據(錯誤5xx)。
- mod_cache現在可以將HIT / MISS / REVALIDATE插入X-Cache標頭。
- mod_include負責
- 支持'include'元素中的'onerror'屬性,允許在出錯時提供錯誤文檔而不是默認錯誤字符串。
- mod_cgi,mod_include,mod_isapi,...
- 將標頭轉換為環境變量比以前更嚴格,以通過標頭注入緩解一些可能的跨站點腳本攻擊。現在以靜默方式刪除包含無效字符(包括下劃線)的標頭。 Apache中的環境變量有一些關於如何解決需要此類標頭的破壞舊客戶端的指針。 (這會影響使用這些環境變量的所有模塊。)
- mod_authz_core授權邏輯容器
- 現在可以使用Require指令和相關的容器指令(例如。 )指定高級授權邏輯
- mod_rewrite的
- mod_rewrite為RewriteRule添加[QSD](查詢字符串丟棄)和[END]標誌,以簡化常見的重寫方案。
- 增加了在RewriteCond中使用複雜布爾表達式的可能性。
- 允許將SQL查詢用作RewriteMap函數。
- mod_ldap,mod_authnz_ldap
- mod_authnz_ldap添加了對嵌套組的支持。
- mod_ldap在處理超時時添加了LDAPConnectionPoolTTL,LDAPTimeout和其他改進。這對於有狀態防火牆丟棄與LDAP服務器的空閒連接的設置特別有用。
- mod_ldap添加LDAPLibraryDebug以記錄使用的LDAP工具包提供的調試信息。
- mod_info
- mod_info現在可以在服務器啟動期間將預解析的配置轉儲到stdout。
- 計劃改進:
- fcgistarter
- 新的FastCGI deamon starter utility
- htcacheclean
- 現在可以列出當前緩存的網址,其中包含可選的元數據。
- 允許從緩存中顯式刪除單個緩存的URL。
- 文件大小現在可以向上舍入到給定的塊大小,使大小限制映射更接近磁盤上的實際大小。
- 緩存大小現在可以受到inode數量的限制,而不是受到磁盤上文件大小的限制。
- rotatelogs
- 現在可以創建指向當前日誌文件的鏈接。
- 現在可以調用自定義的後旋轉腳本。
- 文檔:
- mod_rewrite的
- mod_rewrite文檔已經重新排列並幾乎完全重寫,重點關注示例和常用用法,以及在其他解決方案更合適時向您展示。 “重寫指南”現在是一個頂級部分,具有更多細節和更好的組織。
- mod_ssl的
- mod_ssl文檔得到了極大的增強,除了之前關注的技術細節外,還有更多的入門級示例。
- 模塊開發人員更改:
- 檢查配置掛鉤已添加
- 添加了一個新的hook,check_config,它在pre_config和open_logs掛鉤之間運行。當-t選項傳遞給httpd時,它也會在test_config掛鉤之前運行。 check_config掛鉤允許模塊查看相互依賴的配置指令值並調整它們,同時消息仍然可以記錄到控制台。因此,在核心open_logs掛鉤功能將控制台輸出重定向到錯誤日誌之前,可以向用戶發出錯誤配置問題的警報。
- 已添加Expression Parser
- 我們現在有一個通用表達式解析器,其API在ap_expr.h中公開。這是改編自先前在mod_ssl中實現的表達式解析器。
- 授權邏輯容器
- 授權模塊現在通過ap_register_auth_provider()註冊為提供程序,以支持高級授權邏輯,例如。
- 小對象緩存接口
- ap_socache.h頭文件基於以前的mod_ssl會話緩存實現,公開了一個基於提供程序的接口,用於緩存小型數據對象。目前支持使用共享內存循環緩衝區,基於磁盤的dbm文件和memcache分佈式緩存的提供程序。
- 已添加緩存狀態掛鉤
- mod_cache模塊現在包含一個新的cache_status鉤子,當緩存決策變為已知時調用該鉤子。提供了一個默認實現,它為響應添加了一個可選的X-Cache和X-Cache-Detail標頭。
版本2.3.15 Beta中的新功能:
- 安全:CVE-2011-3348(cve.mitre.org)
- mod_proxy_ajp:無法識別方法時響應HTTP_NOT_IMPLEMENTED。
- 安全:CVE-2011-3192(cve.mitre.org)
- 核心:修復字節範圍請求的處理以減少內存使用,以避免拒絕服務。如果請求中所有範圍的總和大於原始文件,請忽略範圍並發送完整文件。 PR 51714。
- 安全:CVE-2011-3607(cve.mitre.org)
- core:修復ap_pregsub中的整數溢出。這可以被觸發,例如與mod_setenvif通過惡意.htaccess。
- configure:使用--enable-load-all-modules。 時,在生成的默認配置中加載所有模塊
- mod_reqtimeout:更改默認值以設置一些合理的超時值。
- core,mod_dav_fs:將默認ETag更改為“size mtime”,即刪除inode。 PR 49623。
- mod_lua:通過r:ssl_var_lookup()公開SSL變量。
- mod_lua:LuaHook {AccessChecker,AuthChecker,CheckUserID,TranslateName}現在可以另外作為“早期”運行。或者“遲到”或“遲到”相對於其他模塊。
- configure:默認情況下,僅加載configure -enable-foo參數所需或顯式選擇的那些模塊。由--enable-mods-shared = most和friends啟用的模塊的LoadModule語句將被註釋掉。
- mod_lua:防止早期Lua掛鉤(LuaHookTranslateName和LuaHookQuickHandler)配置在,和htaccess中,配置將被忽略。
- mod_lua:解析“嘗試索引本地'r'(用戶數據值)” LuaMapHandler腳本中的錯誤
- mod_log_debug:將if = to expr =中的可選參數重命名,以便更符合其他配置指令。
- mod_headers:要求使用expr =指定表達式,以便更符合其他配置指令。
- mod_substitute:為防止內存使用率過高,請將線路長度限制為1MB。
- mod_lua:使查詢字符串(r.args)可寫。
- mod_include:添加對application / x-www-form-urlencoded編碼和解碼的支持。
- rotatelogs:添加-c選項以在每個輪換間隔中強制創建日誌文件,即使為空。
- core:將ap_pregsub()限制為64K,為更長的字符串添加ap_pregsub_ex()。
- mod_session_crypto:重構以支持新的apr_crypto API。
- http:如果本地URL路徑用作30x的ErrorDocument,則添加缺少的位置標題。
- mod_buffer:確保我們降低子請求,但不是因為mod_rewrite觸發的內部重定向。
- mod_lua:添加r:construct_url作為ap_construct_url的包裝。
- mod_remote_ip:修復內部代理的配置。 PR 49272。
- mpm_winnt:正確處理AcceptFilter'none'模式;連接時解析特定服務器IP端點和遠程客戶端IP。
- mod_setenvif:刪除使用PeerExtList()的SetEnvIfExpr廢棄的OID匹配。
- mpm_prefork,mpm_worker,mpm_event:如果在正常重啟之前創建子項,然後由於缺少鎖定文件而退出,請不要關閉整個服務器。 PR 39311。
- mpm_event:檢查ap_run_create_connection的返回值。 PR:41194。
- mod_mime_magic:將PNG和SWF的簽名添加到示例配置中。 PR:48352。
- core,unixd:添加-D DUMP_RUN_CFG選項以從解析(或默認)配置中轉儲一些配置項。這對於需要設置臨時目錄和權限的init腳本非常有用。
- core,mod_actions,mod_asis:將404請求狀態從loglevel錯誤附加到info的錯誤日誌消息。 PR:35768。
- 核心:使用Perl模塊修復鉤子排序。 PR:45076。
- core:在合併了多個具有相同名稱的標頭後強制執行LimitRequestFieldSize。
- mod_ssl:如果設置了MaxMemFree,請詢問OpenSSL> = 1.0.0以減少內存使用量。 PR 51618。
- mod_ssl:在啟動時,在檢查服務器證書是否與配置的ServerName匹配時,還要考慮subjectAltName擴展名中的dNSName條目。 PR 32652,PR 47051。
- mod_substitute:減少內存使用和數據複製。 PR 50559。
- mod_ssl / proxy:為後端TLS連接啟用SNI擴展
- 為malloc,calloc,realloc添加包裝,檢查內存不足情況並在許多地方使用它們。 PR 51568,PR 51569,PR 51571。
- 當APR_HAVE_STRUCT_RLIMIT為false但定義了RLIMIT_ *時,修復mod_cgi / mod_cgid的交叉編譯。 PR51371。
- core:如果請求中的Host頭與VirtualHost地址匹配,則正確服從ServerName / ServerAlias。 PR 51709。
- mod_unique_id:使用隨機數生成器初始化計數器。 PR 45110。
- 核心:為apr_random添加便利API。
- 核心:添加MaxRangeOverlaps和MaxRangeReversals指令以在返回整個資源之前控制允許的重疊和反轉範圍的數量(默認限制為20)。
- mod_ldap:可選函數uldap_ssl_supported(r)如果從具有mod_ldap指令的虛擬主機調用,則始終返回false。不影響mod_authnz_ldap對mod_ldap的使用。
- mod_filter:當存在使用AP_FILTER_PROTO_NO_BYTERANGE註冊的過濾器時,不要刪除Accept-Ranges標頭,而是將標頭值設置為“none”。
- 核心:允許MaxRanges none | unlimited | default並設置'Accept-Ranges:none',如果使用MaxRanges none忽略範圍。
- mod_ssl:在驗證客戶端或代理服務器的證書時,修改基於CRL的吊銷檢查。將CRL處理完全委託給OpenSSL,並添加新的[Proxy] CARevocationCheck指令以控制撤銷檢查模式。
- core:添加MaxRanges指令以控制返回整個資源之前允許的範圍數,默認限制為200.
- mod_cache:確保CacheDisable可以正確顯示在LocationMatch中。
- mod_cache:修復CACHE過濾器的移動,如果未按配置添加原始過濾器,則會錯誤地停止。
- mod_ssl:改進證書錯誤記錄。 PR 47408。
- mod_authz_groupfile:將組文件中行的長度限制增加到16MB。 PR 43084。
- 核心:將配置文件中的行長度限制增加到16MB。 PR 45888. PR 50824。
- 核心:為可調整大小的緩衝區添加API。
- mod_ldap:為具有LDAP_OPT_CONNECT_TIMEOUT而非LDAP_OPT_NETWORK_TIMEOUT的LDAP工具包啟用LDAPConnectionTimeout,例如Tivoli Directory Server 6.3及更高版本。
- mod_ldap:將默認重試次數從10更改為3,並添加LDAPRetries和LDAPRetryDelay指令。
- mod_authnz_ldap:請勿在身份驗證期間重試,因為這只會增加mod_ldap已經完成的大量重試。
- configure:允許顯式禁用模塊,即使模塊選擇'reallyall'。
- mod_rewrite:檢查每個內部(int :) RewriteMap的有效性,即使在服務器上下文中禁用了RewriteEngine,也可以避免在運行時引用無效的int:map時發生崩潰。 PR 50994。
- mod_ssl,configure:require OpenSSL 0.9.7或更高版本。
- mod_ssl:刪除ssl_toolkit_compat圖層。
- mod_ssl,configure,ab:drop支持RSA BSAFE SSL-C工具包。
- mod_usertrack:在fixups掛鉤中運行mod_usertrack,以確保在mod_rewrite等模塊觸發重定向時設置cookie。出於同樣的原因,也可以使用r-> err_headers_out作為cookie。 PR29755。
- mod_proxy_http,mod_proxy_connect:添加'proxy-status'和'proxy-source-port'請求記錄以進行記錄。 PR 30195。
- configure:如果將ldap編譯為apr-util,則在“all”和“most”選項中啟用ldap模塊。
- core:添加ap_check_cmd_context() - 檢查.htaccess文件中是否執行了命令。
- mod_deflate:如果第一個存儲桶是元數據,則修復無限循環。 PR 51590。
- mod_authn_socache:如果未在httpd.conf中的任何位置配置,則修復在.htaccess中工作,並引入AuthnCacheEnable指令。 PR 51991
- mod_xml2enc:新的(以前的第三方)模塊,通過智能字符集嗅探和轉換支持過濾器的國際化。
- mod_proxy_html:新的(以前的第三方)模塊,用於在反向代理情況下修復HTML鏈接,其中後端生成無法由客戶端解析的URL。
版本2.3.12測試版中的新功能:
- 此版本包括Apache Portable Runtime(APR) )版本1.4.5和APR-Util版本1.3.12在一個單獨的-deps tarball中。必須升級APR庫才能使httpd的所有功能正常運行。
評論沒有發現