Apache เป็นซอฟต์แวร์โอเพนซอร์สข้ามแพลตฟอร์มและสมบูรณ์แบบฟรีที่ออกแบบมาเพื่อใช้งานเว็บเซิร์ฟเวอร์บนระบบปฏิบัติการ Linux และ UNIX เหมือนกับการให้บริการไฟล์ผ่านโปรโตคอล HTTP และ HTTPS .
ซอฟต์แวร์เว็บเซิร์ฟเวอร์ที่ใช้กันมากที่สุดในโลก
เป็นซอฟต์แวร์เว็บเซิร์ฟเวอร์ที่ใช้กันมากที่สุดในโลกซึ่งให้บริการเว็บไซต์นับแสน ๆ แห่งจากอินเทอร์เน็ต เป็นทรัพยากรที่มีความปลอดภัยและสามารถดูแลรักษาได้ง่ายมีทรัพยากรน้อยและสามารถขยายได้ผ่านปลั๊กอิน Apache สามารถใช้งานได้กับมาตรฐาน HTTP ล่าสุด
ในขณะที่ Apache ควรได้รับการติดตั้งโดยผู้ดูแลระบบที่มีทักษะในคอมพิวเตอร์ที่ออกแบบมาเพื่อทำหน้าที่เป็นเซิร์ฟเวอร์เท่านั้นและสามารถติดตั้งโดยผู้ใช้ทั่วไปบนคอมพิวเตอร์ส่วนบุคคลเพื่อการทดสอบเท่านั้นเช่นการออกแบบเว็บหรือการพัฒนาเว็บแอป
เริ่มต้นใช้งาน Apache
วิธีติดตั้ง Apache ในโรงเรียนเก่าเป็นการดาวน์โหลดแพคเกจหลักที่เสถียรล่าสุด (โปรดทราบว่ามีการเก็บรักษาหลายสาขาที่มีเสถียรภาพในเวลาเดียวกันเช่น 2.2.x หรือ 2.4.x) โดยบันทึกลงในคอมพิวเตอร์ของคุณ รวมทั้งการแยกเนื้อหาโดยใช้ยูทิลิตีผู้จัดการที่จัดเก็บ
เปิดแอปจำลองเทอร์มินัลให้ย้ายไปยังตำแหน่งของไฟล์ที่เก็บถาวรโดยใช้ & lsquo; cd & rsquo; (เช่น cd /home/softoware/httpd-2.4.10) และดำเนินการ & lsquo; ./ configure && make & rsquo; คำสั่งเพื่อปรับแต่งและคอมไพล์ซอฟต์แวร์สำหรับสถาปัตยกรรมระบบปฏิบัติการ / ฮาร์ดแวร์ของคุณ (ขณะนี้ได้รับการสนับสนุนสถาปัตยกรรมแบบ 32 บิตและ 64 บิต)
จากนั้นให้ติดตั้งระบบโดยใช้ & lsquo; sudo make install & rsquo; คำสั่ง หลังจากติดตั้งแล้วให้ดูที่ไฟล์การกำหนดค่าเริ่มต้นที่ /usr/local/apache2/conf/httpd.conf หรือ /usr/apache2/conf/httpd.conf และปรับการตั้งค่าตามความต้องการของคุณ (ดูหน้าแรกของโครงการ สำหรับรายละเอียด) บริการ httpd จะเริ่มต้นโดยอัตโนมัติเมื่อบูตถ้าคุณได้เพิ่มลงใน
มีอะไรใหม่ ในรุ่นนี้:
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้การปรับปรุงที่สำคัญสำหรับการสนับสนุน OCSP, mod_lua, การตั้งค่าพร็อกซีแบบไดนามิกย้อนหลัง, การตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่, พร็อกซี FastCGI, Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับการสนับสนุน OCSP, mod_lua, การกำหนดค่าพร็อกซี Reverse Reverse, การตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่, พร็อกซี FastCGI, Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
มีอะไรใหม่ ในรุ่น:- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับการสนับสนุน OCSP, mod_lua , การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลัง, การตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงขึ้น, พร็อกซี FastCGI, Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับ OCSP support, mod_lua การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลังการตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่พร็อกซี FastCGI Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับ OCSP support, mod_lua การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลังการตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่พร็อกซี FastCGI Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับการสนับสนุน OCSP, mod_lua, การกำหนดค่าพร็อกซี Reverse Reverse, การตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่, พร็อกซี FastCGI, Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
มีอะไรใหม่ ในเวอร์ชัน 2.4.20:- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับ OCSP support, mod_lua การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลังการตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่พร็อกซี FastCGI Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับ OCSP support, mod_lua การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลังการตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่พร็อกซี FastCGI Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับ OCSP support, mod_lua การกำหนดค่าพร็อกซีแบบไดนามิกแบบย้อนหลังการตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่พร็อกซี FastCGI Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
- คุณลักษณะใหม่ ๆ ได้แก่ MPM ที่สามารถโหลดได้, การปรับปรุงที่สำคัญสำหรับการสนับสนุน OCSP, mod_lua, การกำหนดค่าพร็อกซี Reverse Reverse, การตรวจสอบสิทธิ์ / การให้สิทธิ์ที่ปรับปรุงใหม่, พร็อกซี FastCGI, Expression Parser ใหม่และ API การแคชวัตถุขนาดเล็ก
มีอะไรใหม่ ในเวอร์ชัน 2.4.12:
- Apache รุ่นล่าสุดนี้เป็น สาขา 2.4.6 แบบใหม่ของ Apache HTTPD และเป็นตัวแทนของโครงการนวัตกรรมใหม่ ๆ ประมาณ 15 ปีและได้รับการแนะนำให้รู้จักกับเวอร์ชันก่อน ๆ ทั้งหมด
- Apache รุ่นนี้มีจุดประสงค์เพื่อความปลอดภัยและการแก้ไขข้อบกพร่อง
- การเปิดตัว Apache นี้เป็นคุณลักษณะด้านความปลอดภัยคุณลักษณะและการแก้ไขข้อบกพร่อง:
- CVE-2014-0117 mod_proxy: แก้ไขข้อขัดข้องในการจัดการส่วนหัวของ Connection ซึ่งอนุญาตให้มีการโจมตีปฏิเสธบริการจากพร็อกซีย้อนกลับด้วย MPM ที่มีเธรด
- CVE-2014-3523 แก้ไขการปฏิเสธการใช้บริการหน่วยความจำใน WinMount MPM (ใช้ในการติดตั้ง Windows ทั้งหมด) วิธีแก้ไขปัญหา: AcceptFilter {none | connect}
- CVE-2014-0226 แก้ไขสภาวะการแข่งขันในการจัดการป้ายคะแนนซึ่งอาจทำให้เกิดการล้นหน่วยความจำล้นได้
- CVE-2014-0118 mod_deflate: ตัวกรองป้อนข้อมูล DEFLATE (ทำให้พองตัวของคำขอ) จะจำกัดความยาวและอัตราส่วนการบีบอัดของหน่วยงานที่ร้องขอที่มีการขยายตัวเพื่อหลีกเลี่ยงการปฏิเสธบริการผ่านทางร่างกายที่มีการบีบอัดสูง ดูคำสั่ง DeflateInflateLimitRequestBody, DeflateInflateRatioLimit และ DeflateInflateRatioBurst
- CVE-2014-0231 mod_cgid: แก้ไขการปฏิเสธการให้บริการกับสคริปต์ CGI ที่ไม่ใช้ stdin ซึ่งอาจนำไปสู่กระบวนการย่อย HTTPD ที่ทำให้เด็ก ๆ ต้องเติมป้ายคะแนนและแขวนเซิร์ฟเวอร์ไว้ในที่สุด โดยค่าเริ่มต้นการหมดเวลา I / O ของไคลเอ็นต์ (คำสั่ง Timeout) ใช้กับการสื่อสารกับสคริปต์แล้ว สามารถใช้คำสั่ง CGIDScriptTimeout เพื่อกำหนดช่วงเวลาที่แตกต่างกันสำหรับการสื่อสารกับสคริปต์
- ในฉบับนี้มีคุณลักษณะใหม่ ๆ ที่น่าสนใจ ได้แก่
- การปรับปรุง Proxy FGI และเว็บซ็อกเก็ต
- ความสามารถในพร็อกซีผ่านตัวจัดการ
- การควบคุมขอบเขตการเขียน RewriteRules ที่ละเอียดขึ้น
- การสนับสนุน Unix Domain Socket (UDS) สำหรับแบ็กเอนด์ mod_proxy
- สนับสนุนขนาดหน่วยความจำที่แชร์กันขนาดใหญ่สำหรับ mod_socache_shmcb
- mod_lua และการปรับปรุง mod_ssl
- สนับสนุนกลุ่มที่ตั้งชื่อและการอ้างอิงย้อนหลังในไดเร็กทอรี LocationMatch, DirectoryMatch, FilesMatch และ ProxyMatch
- mod_dav: dav_resource- & gt; uri ถือว่าเป็นไม่มีการเข้ารหัส นี่เป็นการเปลี่ยนแปลงที่ไม่จำเป็นของ ABI ใน 2.2.25 PR 55397
- mod_dav: อย่าตรวจสอบความถูกต้องของล็อกกับการเก็บรวบรวม URI แหล่งข้อมูลต้นฉบับของผู้ปกครอง PR 55304.
- mod_ssl: ตรวจสอบชื่อโฮสต์ SNI กับส่วนหัวของโฮสต์ไม่สำคัญ PR 49491
- mod_ssl: เปิดใช้งานการสนับสนุนคีย์ ECC และ ciphers ECDH ทดสอบกับ OpenSSL 1.0.0b3
- mod_ssl: เปลี่ยนค่าเริ่มต้นสำหรับ SSLCompression เป็นปิดเนื่องจากการบีบอัดทำให้เกิดปัญหาด้านความปลอดภัยในการตั้งค่าส่วนใหญ่ (เรียกว่า & quot; อาชญากรรม & quot; การโจมตี)
- mod_ssl: แก้ไขข้อผิดพลาดในการคอมไพล์เมื่อ OpenSSL ไม่มีการสนับสนุน SSLv2 ปัญหาได้รับการแนะนำใน 2.2.25 PR 55194.
- mod_dav: แก้ไขการเข้ารหัสสองครั้งของ URIs ในส่วนหัวของ XML และ Location (เกิดจากการเปลี่ยนแปลง ABI ที่ไม่ได้ตั้งใจใน 2.2.25) PR 55397.
- APR 1.5.0 หรือใหม่กว่านี้จำเป็นสำหรับ MPM เหตุการณ์
- slotmem_shm: ตรวจหาข้อผิดพลาด [Jim Jagielski]
- เหตุการณ์: ใช้โครงสร้างข้อมูลแบบ Skiplist [Jim Jagielski]
- mpm_unix: เพิ่มการใช้งาน ap_mpm_podx_ * เพื่อหลีกเลี่ยงการทำสำเนารหัสและจัดแนว w / trunk [Jim Jagielski]
- แก้ไขคำปฏิเสธที่อาจเป็นไปได้ของคำสั่ง MaxMemFree และ ThreadStackSize ที่ถูกต้อง [Mike Rumph]
- mod_proxy_fcgi: ลบขีด จำกัด 64K ในความยาวที่เข้ารหัสของ envvars ทั้งหมด แต่ละ envvar ที่มีความยาวเข้ารหัสมากกว่า 16K จะถูกละเว้น [Jeff Trawick]
- mod_proxy_fcgi: จัดการข้อมูลโปรโตคอลการอ่านที่แบ่งระหว่างแพ็คเก็ต [Jeff Trawick]
- mod_ssl: ปรับปรุงการจัดการคีย์ชั่วคราวและคีย์ ECDH โดยอนุญาตให้กำหนดค่าพารามิเตอร์ที่กำหนดเองผ่าน SSLCertificateFile และเพิ่มพารามิเตอร์มาตรฐาน DH สำหรับ 1024/2048/3072/4096 บิต พารามิเตอร์ที่เป็นมาตรฐานจะใช้กับคีย์คีย์ RSA / DSA ของใบรับรองเว้นเสียแต่ว่ามีการกำหนดค่าพารามิเตอร์ที่กำหนดเอง [Kaspar Brand]
- mod_ssl กำหนดค่า: ต้องใช้ OpenSSL 0.9.8a หรือใหม่กว่า [Kaspar Brand]
- mod_ssl: ปล่อยการสนับสนุนสำหรับ ciphers ระดับการส่งออกที่มีคีย์ RSA ชั่วคราวและยกเลิกการเข้ารหัสลับแบบ aNULL, eNULL และ EXP โดยไม่ จำกัด โดยใช้ SSLCipherSuite [Kaspar Brand]
- เพิ่มระบบสร้างแบบทดลองบนระบบ cmake สำหรับ Windows [Jeff Trawick, Tom Donovan]
- เหตุการณ์ MPM: แก้ไขปัญหาข้อขัดข้องที่เป็นไปได้ (โมดูลของบุคคลที่สามเข้าถึง c- & gt; sbh) หรืออัปเดต mod_status ที่ไม่เป็นไปตามโอกาสสำหรับคำขอเก็บข้อมูลชั่วคราวบางส่วนภายใต้ภาระ [Eric Covener]
- mod_authn_socache: รองรับอาร์กิวเมนต์เริ่มต้นสำหรับผู้ให้บริการ socache [Chris Darroch]
- mod_session: รีเซ็ตอายุสูงสุดสำหรับการบันทึกเซสชัน PR 47476. [Alexey Varlamov]
- mod_session: หลังจากแยกวิเคราะห์ค่าของส่วนหัวที่ระบุโดยคำสั่ง SessionHeader เอาค่าออกจากการตอบสนอง PR 55279. [Graham Leggett]
- mod_headers: อนุญาตให้ตัวระบุรูปแบบในสตริงการทดแทนเมื่อใช้การแก้ไข Header [Daniel Ruggeri]
- mod_dav: dav_resource- & gt; uri ถือว่าเป็นไม่มีการเข้ารหัส นี่เป็น ABI ที่ไม่จำเป็นที่มีการเปลี่ยนแปลงใน 2.4.6 PR 55397.
- mod_dav: ไม่ต้องใช้โทเค็นล็อคสำหรับแหล่งข้อมูล COPY PR 55306.
- แกน: ไม่ตัดทอนเอาต์พุตเมื่อส่งสัญญาณขัดจังหวะด้วยสัญญาณเช่นจากกระบวนการ CGI ที่ออก PR 55643. [Jeff Trawick]
- WinNT MPM: ออกจากลูกถ้ากระบวนการหลักขัดข้องหรือสิ้นสุดลง [Oracle Corporation]
- Windows: แก้ไขความล้มเหลวในการยกเลิก stderr ในการกำหนดค่าล็อกข้อผิดพลาดบางอย่าง (ข้อความแสดงข้อผิดพลาด AH00093) [Jeff Trawick]
- mod_session_crypto: อนุญาตให้ใช้ exec: การโทรเพื่อรับคีย์การเข้ารหัสเซสชัน [Daniel Ruggeri]
- หลัก: เพิ่มส่วนที่ขาดหายไปในส่วนหัวการตอบสนองของ HTTP PR 54946 [Rainer Jung]
- mod_rewrite: เขียนใหม่ websocket-aware เพื่ออนุญาตให้ใช้ proxying PR 55598 [Chris Harris]
- mod_ldap: เมื่อค้นหากลุ่มย่อยให้ใช้ objectClass = * โดยนัยแทน = cn = * filter ที่ชัดเจน [David Hawes]
- ab: เพิ่มเวลารอแก้ไขเวลาในการประมวลผลและข้อผิดพลาดในการเขียนผลลัพธ์เท่านั้นหากเกิดขึ้น [Christophe Jaillet]
- ผู้ปฏิบัติงาน MPM: อย่าบังคับคนงานที่ถูกบังคับโดยไม่ได้รับอนุญาตหากกระบวนการเด็กออกไปอย่างสง่างาม [Oracle Corporation]
- หลัก: apachectl -S พิมพ์โฮสต์เสมือนที่ขึ้นกับชื่อตามอักขระ wildcard สองครั้ง PR54948 [Eric Covener]
- mod_auth_basic: เพิ่มคำสั่ง AuthBasicUseDigestAlgorithm เพื่ออนุญาตให้มีการโยกย้ายรหัสผ่านจากการย่อยข้อมูลไปเป็นการพิสูจน์ตัวตนพื้นฐาน [Chris Darroch]
- ab: เพิ่มพารามิเตอร์ -l ใหม่เพื่อไม่ให้ตรวจสอบความยาวของคำตอบ ซึ่งจะเป็นประโยชน์กับหน้าเว็บแบบไดนามิก PR9945, PR27888, PR42040 [] กำจัดการจัดรูปแบบข้อความเริ่มต้นที่เขียนลงในคอนโซลเมื่อใช้ ErrorLogFormat [Jeff Trawick]
- mod_auth_digest: ให้เจาะจงมากยิ่งขึ้นเมื่อ realm mismatches เนื่องจาก realm ไม่ได้รับการระบุ [Graham Leggett]
- mod_proxy: เพิ่มบันทึกในโปรแกรมจัดการ balancer ระบุว่าการเปลี่ยนแปลงจะทำหรือไม่ได้รับการสืบทอดต่อไป [Daniel Ruggeri, Jim Jagielski]
- mod_cache: หลีกเลี่ยงความผิดพลาดกับ strcmp () เมื่อไม่มีชื่อโฮสต์ [Graham Leggett]
- หลัก: เพิ่ม util_fcgi.h และคำจำกัดความที่เชื่อมโยงและการสนับสนุนสำหรับ FastCGI โดยอิงกับ mod_proxy_fcgi [Jeff Trawick]
- mod_headers: เพิ่ม 'note-name ส่วนหัวของส่วนหัวส่วนหัว' สำหรับการคัดลอกค่าส่วนหัวข้อมูลการตอบกลับลงในบันทึกย่อ [Eric Covener]
- mod_headers: เพิ่มคำสั่ง 'setifempty' ลงใน Header และ RequestHeader [Eric Covener]
- mod_logio: ตัวระบุรูปแบบใหม่% S (ผลรวม) ซึ่งเป็นผลรวมของจำนวนไบต์ที่ได้รับและส่ง 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: เพิ่ม TRACE5 สำหรับการลองใหม่ของ LDAP [Eric Covener]
- mod_ldap: ลองใหม่เมื่อหมดเวลา LDAP ระหว่าง authn [Eric Covener]
- mod_ldap: เปลี่ยน & quot; LDAPReferrals ปิด & quot; เพื่อตั้งค่าอ็อพชัน LDAP SDK พื้นฐานไว้ที่ OFF และแนะนำ "ค่าเริ่มต้น LDAPReferrals" & quot; เพื่อเริ่มต้น SDK ค่าเริ่มต้น sans จะคืนค่าการเรียกกลับการรับรองความถูกต้อง [Jan Kaluza]
- หลัก: ล็อกข้อความที่ TRACE1 เมื่อไคลเอนต์ยกเลิกการเชื่อมต่อ [Eric Covener]
- WinNT MPM: อย่าพลาดระหว่างการเริ่มต้นกระบวนการเด็กถ้าไม่รู้จักโปรโตคอล Listen [Jeff Trawick]
- โมดูล: แก้ไขคำเตือนของคอมไพเลอร์ [Guenter Knauf]
- ซิงค์ 2.4 และลำตัว - หลีกเลี่ยงการจัดสรรหน่วยความจำบางส่วนและทำงานเมื่อ TRACE1 ไม่ได้เปิดใช้งาน - แก้ไขข้อผิดพลาดในการรวมการป้องกัน - เยื้อง - ไม่จำเป็นต้องลดสายก่อนที่จะลบเส้นทางเป็นเพียงเสียเวลา ... - บันทึกสักสองสามช่วง [Christophe Jaillet]
- mod_filter: เพิ่ม & quot; เปลี่ยน = ไม่ & quot; เป็นโปรโตคอลเพื่อ FilterProtocol เพื่อลบผู้ให้บริการธงเริ่มต้นที่ตั้งเวลาลงทะเบียน [Eric Covener]
- core, mod_ssl: เปิดใช้งานความสามารถสำหรับโมดูลเพื่อย้อนกลับความรู้สึกของโพลจากเหตุการณ์ที่อ่านแล้วเขียนหรือในทางกลับกัน นี่คือขั้นตอนในการอนุญาตให้ mod_ssl ใช้ประโยชน์จากเหตุการณ์ MPM อย่างเต็มที่ [Graham Leggett]
- Makefile.win: ติดตั้งไฟล์ pcre DLL ที่เหมาะสมระหว่างการติดตั้งการแก้ปัญหา build PR 55235. [Ben Reser]
- mod_ldap: แก้ไขปัญหาการรั่วไหลของหน่วยความจำหรือความเสียหายที่อาจเกิดขึ้น PR 54936. [Zhenbo Xu]
- ab: แก้ไขบัฟเฟอร์ที่อาจล้นเมื่อประมวลผลตัวเลือกบรรทัดคำสั่ง T และ X PR 55360. [Mike Rumph]
- fcgistarter: ระบุ SO_REUSEADDR เพื่ออนุญาตให้เริ่มต้นเซิร์ฟเวอร์ที่มีการเชื่อมต่อเก่าใน TIME_WAIT [Jeff Trawick]
- core: เพิ่ม hook แบบ open_htaccess ซึ่งร่วมกับ dirwalk_stat และ post_perdir_config (แนะนำใน 2.4.5) ช่วยให้ mpm-itk สามารถใช้งานได้โดยไม่ต้องมี patches เป็นแกน httpd [Stefan Fritsch]
- support / htdbm: แก้ไขการประมวลผลของ -t สวิตช์บรรทัดคำสั่ง การถดถอยที่นำมาใช้ใน 2.4.4
- การปรับปรุงหลัก:
- MPM ที่เรียกใช้งานได้ในเวลารันเนอร์
- MPM หลายเครื่องสามารถสร้างเป็นโมดูลที่สามารถโหลดได้ในขณะรวบรวมข้อมูล MPM ที่เลือกสามารถกำหนดค่าได้ในขณะดำเนินการ
- กิจกรรม MPM
- กิจกรรม MPM ไม่มีการทดลอง แต่ได้รับการสนับสนุนอย่างเต็มที่แล้ว
- การสนับสนุนแบบอะซิงโครนัส
- สนับสนุนการอ่าน / เขียนแบบอะซิงโครนัสที่ดีขึ้นเพื่อสนับสนุน MPM และแพลตฟอร์ม
- การกำหนดค่า LogLevel ต่อโมดูลและต่อไดเรกทอรี
- LogLevel สามารถกำหนดค่าได้ต่อหนึ่งโมดูลและต่อไดเรกทอรี ระดับใหม่ trace1 เพื่อ trace8 ได้รับการเพิ่มด้านบนระดับการตรวจแก้จุดบกพร่อง
- ส่วนการกำหนดค่าตามคำขอแต่ละส่วน
- ,, และ section สามารถใช้เพื่อกำหนดการตั้งค่าตามเกณฑ์ต่อคำขอ
- เครื่องแยกวิเคราะห์นิพจน์ทั่วไป
- Parser นิพจน์ใหม่ช่วยในการระบุเงื่อนไขที่ซับซ้อนโดยใช้ไวยากรณ์ทั่วไปในคำสั่งเช่น SetEnvIfExpr, RewriteCond, Header, และอื่น ๆ
- KeepAliveTimeout เป็นมิลลิวินาที
- ขณะนี้สามารถระบุ KeepAliveTimeout เป็นมิลลิวินาที
- คำสั่ง NameVirtualHost
- ไม่จำเป็นและเลิกใช้แล้ว
- แทนที่การกำหนดค่า
- คำสั่ง AllowOverrideList ใหม่ช่วยให้สามารถควบคุม directive ได้ดียิ่งขึ้นในไฟล์. htaccess
- กำหนดตัวแปรไฟล์
- ขณะนี้สามารถกำหนดตัวแปรในการกำหนดค่าเพื่อให้สามารถระบุได้อย่างชัดเจนหากใช้ค่าเดียวกันในหลาย ๆ ที่ในการกำหนดค่า
- ลดการใช้หน่วยความจำ
- แม้จะมีคุณสมบัติใหม่ ๆ 2.4.x มักใช้หน่วยความจำน้อยกว่า 2.2.x
- โมดูลใหม่:
- mod_proxy_fcgi
- แบ็กเอนด์โปรโตคอล FastCGI สำหรับ mod_proxy
- mod_proxy_scgi
- ส่วนหลังโปรโตคอลของ SCGI สำหรับ mod_proxy
- mod_proxy_express
- ให้พร็อกซีแบบย้อนกลับเป็นจำนวนมากแบบไดนามิกสำหรับ mod_proxy
- mod_remoteip
- แทนที่ที่อยู่ IP ระยะไกลของไคลเอ็นต์และชื่อโฮสต์สำหรับคำขอโดยใช้รายการที่อยู่ IP ที่นำเสนอโดยผู้รับมอบฉันทะหรือ balancer โหลดผ่านทางส่วนหัวคำขอ
- mod_heartmonitor, mod_lbmethod_heartbeat
- อนุญาตให้ mod_proxy_balancer ตัดสินใจฐานการโหลดบาลานซ์ด้วยจำนวนการเชื่อมต่อที่ใช้งานอยู่ในเซิร์ฟเวอร์ส่วนหลัง
- mod_proxy_html
- ก่อนหน้านี้โมดูลของบุคคลที่สามจะสนับสนุนการแก้ไขลิงก์ HTML ในสถานการณ์พร็อกซีแบบย้อนกลับโดยที่แบ็กเอนด์จะสร้าง URL ที่ไม่ถูกต้องสำหรับไคลเอ็นต์พร็อกซี
- mod_sed
- การแทนที่ mod_substitute ขั้นสูงช่วยให้สามารถแก้ไขเนื้อหาการตอบสนองได้โดยใช้พลังงานเต็มที่
- mod_auth_form
- อนุญาตให้ใช้การตรวจสอบสิทธิ์แบบฟอร์ม
- mod_session
- อนุญาตให้มีสถานะเซสชันสำหรับลูกค้าโดยใช้คุกกี้หรือที่จัดเก็บข้อมูล
- mod_allowmethods
- โมดูลใหม่เพื่อ จำกัด วิธีการ HTTP บางอย่างโดยไม่รบกวนการตรวจสอบสิทธิ์หรือการให้สิทธิ์
- mod_lua
- ฝังภาษา Lua ไว้ใน httpd สำหรับการกำหนดค่าและฟังก์ชันตรรกะทางธุรกิจขนาดเล็ก (ทดลอง)
- mod_log_debug
- อนุญาตให้เพิ่มการบันทึกการแก้ปัญหาที่กำหนดเองได้ในแต่ละขั้นตอนของการประมวลผลคำขอ
- mod_buffer
- ให้สำหรับบัฟเฟอร์ตัวกรองอินพุตและเอาต์พุต
- mod_data li>
- แปลงเนื้อหาการตอบกลับให้เป็น URL ข้อมูล RFC2397
- mod_ratelimit
- ให้การกำหนดอัตราแบนด์วิดท์สำหรับลูกค้า
- mod_request
- จัดเตรียมตัวกรองเพื่อจัดการและสร้างเนื้อความคำขอ HTTP ที่มีอยู่
- mod_reflector
- ให้การสะท้อนของเนื้อหาคำขอเป็นคำตอบผ่านทางกองกรองผลลัพธ์
- mod_slotmem_shm
- ให้บริการผู้ให้บริการหน่วยความจำร่วม (Slot) (ala the scoreboard)
- mod_xml2enc
- ก่อนหน้านี้โมดูลของบุคคลที่สามสนับสนุน internationalization ในโมดูลตัวกรองที่ใช้ libxml2 (markup-aware)
- การเพิ่มประสิทธิภาพโมดูล:
- mod_ssl
- ขณะนี้คุณสามารถกำหนดค่า mod_ssl เพื่อใช้เซิร์ฟเวอร์ OCSP เพื่อตรวจสอบสถานะการตรวจสอบความถูกต้องของใบรับรองไคลเอ็นต์ การตอบกลับดีฟอลต์คือการกำหนดค่าพร้อมกับการตัดสินใจว่าจะต้องการการตอบกลับที่กำหนดไว้ในใบรับรองของไคลเอ็นต์เองหรือไม่
- ขณะนี้ mod_ssl ยังสนับสนุนการเย็บเล่ม OCSP ซึ่งเซิร์ฟเวอร์จะรับการยืนยันใบรับรองของ OCSP โดยอัตโนมัติและส่งข้อมูลไปยังลูกค้าในระหว่างการจับมือ
- ขณะนี้คุณสามารถกำหนดค่า mod_ssl เพื่อแชร์ข้อมูล SSL Session ระหว่างเซิร์ฟเวอร์ผ่าน memcached
- คีย์ EC จะได้รับการสนับสนุนนอกเหนือจาก RSA และ DSA แล้ว
- mod_proxy
- คำสั่ง ProxyPass ได้รับการกำหนดค่าไว้อย่างเหมาะสมที่สุดภายในบล็อก Location หรือ LocationMatch และมีข้อได้เปรียบด้านประสิทธิภาพที่สำคัญกว่าไวยากรณ์แบบสองพารามิเตอร์แบบดั้งเดิมเมื่อมีจำนวนมาก
- ที่อยู่ต้นทางสำหรับคำขอพร็อกซีสามารถกำหนดค่าได้แล้ว
- mod_proxy_balancer
- การเปลี่ยนแปลงการกำหนดค่ารันไทม์เพิ่มเติมสำหรับ BalancerMembers ผ่าน balancer-manager
- สามารถเพิ่ม BalancerMembers เพิ่มเติมได้เมื่อรันไทม์ผ่าน balancer-manager
- การกำหนดค่ารันไทม์ของเซตย่อยของพารามิเตอร์ Balancer
- BalancerMembers สามารถตั้งค่าเป็น 'Drain' เพื่อให้ตอบสนองต่อเซสชันที่มีอยู่เพียงครั้งเดียวเพื่อให้สามารถใช้งานออฟไลน์ได้อย่างสง่างาม
- การตั้งค่า Balancer สามารถใช้งานได้ต่อเนื่องหลังจากรีสตาร์ทแล้ว
- mod_cache
- mod_cache สามารถแคช HEAD ได้
- ในกรณีที่เป็นไปได้คำสั่ง mod_cache สามารถตั้งค่าต่อไดเรกทอรีแทนแต่ละเซิร์ฟเวอร์
- URL หลักของ URL ที่แคชสามารถกำหนดเองได้เพื่อให้แคชของแคชสามารถแชร์คำนำหน้า URL ปลายทางเดียวกันได้
- ขณะนี้ mod_cache สามารถให้บริการข้อมูลแคชเก่าเมื่อไม่สามารถใช้แบ็กเอนด์ได้ (ข้อผิดพลาด 5xx)
- mod_cache สามารถแทรก HIT / MISS / REVALIDATE ลงในส่วนหัว X-Cache
- mod_include
- สนับสนุนแอตทริบิวต์ "onerror" ภายในองค์ประกอบ "include" ซึ่งทำให้เอกสารข้อผิดพลาดสามารถแสดงข้อผิดพลาดแทนที่จะเป็นสตริงข้อผิดพลาดเริ่มต้น
- mod_cgi, mod_include, mod_isapi, ...
- การแปลส่วนหัวของตัวแปร environment จะเข้มงวดกว่าก่อนเพื่อลดการโจมตี cross-site-scripting ที่เป็นไปได้ผ่านการแทรกส่วนหัว ส่วนหัวที่มีอักขระที่ไม่ถูกต้อง (รวมทั้งเครื่องหมายขีดล่าง) จะถูกทิ้งไว้อย่างเงียบ ๆ ตัวแปรสภาพแวดล้อมใน Apache มีคำแนะนำบางอย่างเกี่ยวกับวิธีทำงานกับลูกค้าแบบเดิมที่เสียค่าใช้จ่ายซึ่งต้องใช้ส่วนหัวดังกล่าว (มีผลต่อโมดูลทั้งหมดที่ใช้ตัวแปรสภาพแวดล้อมเหล่านี้)
- mod_authz_core การอนุญาตคอนเทนเนอร์ลอจิก
- ตรรกะการให้สิทธิ์ขั้นสูงอาจได้รับการระบุโดยใช้ directive ที่ต้องการและคำสั่งคอนเทนเนอร์ที่เกี่ยวข้องเช่น
- mod_rewrite
- mod_rewrite เพิ่มเครื่องหมาย [QSD] (Query String Discard) และ [END] สำหรับ RewriteRule เพื่อลดความซับซ้อนของสถานการณ์การเขียนใหม่
- เพิ่มความเป็นไปได้ที่จะใช้นิพจน์บูลีนที่ซับซ้อนใน RewriteCond
- อนุญาตให้ใช้ข้อความค้นหา SQL เป็นฟังก์ชัน RewriteMap
- mod_ldap, mod_authnz_ldap
- mod_authnz_ldap เพิ่มการสนับสนุนกลุ่มที่ซ้อนกัน
- mod_ldap เพิ่ม LDAPConnectionPoolTTL, LDAPTimeout และการปรับปรุงอื่น ๆ ในการจัดการ timeouts การตั้งค่านี้มีประโยชน์อย่างยิ่งสำหรับการตั้งค่าที่ไฟร์วอลล์สถานะจะทำให้การเชื่อมต่อที่ไม่ได้ใช้งานกับเซิร์ฟเวอร์ LDAP ลดลง
- mod_ldap เพิ่ม LDAPLibraryDebug เพื่อล็อกข้อมูลการแก้ปัญหาโดยชุดเครื่องมือ LDAP ที่ใช้
- mod_info
- mod_info สามารถถ่ายโอนข้อมูลการกำหนดค่าก่อนหน้านี้ไปยัง stdout ระหว่างการเริ่มต้นเซิร์ฟเวอร์
- การปรับปรุงโปรแกรม:
- fcgistarter
- ยูทิลิตีการเริ่มต้นใหม่ของ FastCGI deamon
- htcacheclean
- ขณะนี้ URL ที่แคชปัจจุบันสามารถแสดงพร้อมกับมีเมทาดาทาเพิ่มเติมได้
- อนุญาตให้ลบ URL ที่แคชออกจากแคชอย่างชัดเจน
- ขนาดไฟล์สามารถปัดเศษไปตามขนาดของบล็อกที่กำหนดทำให้แผนที่ จำกัด ขนาดได้ใกล้เคียงกับขนาดจริงบนดิสก์
- ขนาดแคชสามารถถูก จำกัด ด้วยจำนวน inodes แทนที่จะเป็นหรือถูก จำกัด ด้วยขนาดของไฟล์บนดิสก์
- rotatelogs
- ตอนนี้สามารถสร้างลิงก์ไปยังไฟล์บันทึกปัจจุบัน
- ตอนนี้ขอเรียกใช้สคริปต์หมุนเวียนที่กำหนดเองแล้ว
- เอกสารอ้างอิง:
- mod_rewrite
- เอกสาร mod_rewrite ได้รับการจัดเรียงใหม่และเขียนใหม่เกือบทั้งหมดโดยเน้นที่ตัวอย่างและการใช้งานทั่วไปเช่นเดียวกับการแสดงให้คุณเห็นเมื่อโซลูชันอื่น ๆ เหมาะสมกว่า คู่มือการเขียนใหม่นี้เป็นส่วนระดับสูงสุดที่มีรายละเอียดมากขึ้นและมีองค์กรที่ดีขึ้น
- mod_ssl
- เอกสาร mod_ssl ได้รับการปรับปรุงให้ดีขึ้นโดยมีตัวอย่างเพิ่มเติมที่ระดับเริ่มต้นการใช้งานนอกเหนือจากการเน้นรายละเอียดทางเทคนิคก่อนหน้านี้
- การเปลี่ยนแปลงผู้พัฒนาโมดูล:
- ตรวจสอบเพิ่มแฮงเอาท์ตั้งค่า
- มีการเพิ่ม hook ใหม่ check_config ซึ่งทำงานระหว่าง pre_config และ open_logs hooks นอกจากนี้ยังทำงานก่อนเบ็ด test_config เมื่อมีการส่งผ่านตัวเลือก -t ไปยัง httpd เบ็ด hook check_config ช่วยให้โมดูลสามารถตรวจสอบค่า directive ของคอนฟิกูเรชันที่ขึ้นกับพึ่งพากันได้และปรับค่าเหล่านี้ในขณะที่ข้อความยังสามารถเข้าสู่ระบบได้ที่คอนโซล ผู้ใช้จึงสามารถแจ้งเตือนปัญหาการกำหนดค่าผิดพลาดได้ก่อนที่ฟังก์ชั่น hook open_logs หลักจะเปลี่ยนเส้นทางคอนโซลออกไปยังล็อกข้อผิดพลาด
- Expression Parser Added
- ตอนนี้เรามีตัวแบ่งหน้าที่แสดงออกทั่วไปซึ่งมี API อยู่ใน ap_expr.h นี่คือดัดแปลงมาจากตัวแบ่งหน้าที่แสดงผลที่นำมาใช้ใน mod_ssl ก่อนหน้านี้
- คอนเทนเนอร์ Logic การให้สิทธิ์
- ตอนนี้โมดูลการให้สิทธิ์จะลงทะเบียนเป็นผู้ให้บริการผ่าน ap_register_auth_provider () เพื่อสนับสนุนตรรกะการให้สิทธิ์ขั้นสูงเช่น
- การเชื่อมต่อแคชขนาดเล็ก
- ส่วนหัว ap_socache.h จะแสดงอินเทอร์เฟซสำหรับผู้ให้บริการสำหรับแคชวัตถุข้อมูลขนาดเล็กโดยขึ้นอยู่กับการใช้แคชของเซสชัน mod_ssl ก่อนหน้า ผู้ให้บริการที่ใช้บัฟเฟอร์ cyclic memory ที่ใช้ร่วมกันไฟล์ dbm ของดิสก์และแคชกระจายแบบ memcache ได้รับการสนับสนุนในขณะนี้
- เพิ่มสถานะตะกร้าแคช
- โมดูล mod_cache มีเบ็ดใหม่ cache_status ซึ่งเรียกเมื่อการตัดสินใจแคชกลายเป็นที่รู้จัก มีการใช้ค่าเริ่มต้นซึ่งจะเพิ่มส่วนหัว X-Cache และ X-Cache-Detail ให้กับการตอบสนอง
- ความปลอดภัย: 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)
- หลัก: แก้ไขปัญหาจำนวนเต็มใน ap_pregsub ซึ่งสามารถเรียกใช้ได้เช่น กับ mod_setenvif ผ่านทาง. htaccess ที่เป็นอันตราย
- กำหนดค่า: โหลดโมดูลทั้งหมดในการกำหนดค่าเริ่มต้นที่สร้างขึ้นเมื่อใช้ --enable-load-all-modules
- mod_reqtimeout: เปลี่ยนค่าเริ่มต้นเพื่อตั้งค่าระยะหมดเวลาที่เหมาะสม
- core, mod_dav_fs: เปลี่ยน ETag เริ่มต้นเป็น & quot; size mtime & quot ;, เช่นถอด inode ออก PR 49623
- mod_lua: แสดงตัวแปร SSL ผ่าน r: ssl_var_lookup ()
- mod_lua: LuaHook {AccessChecker, AuthChecker, CheckUserID, TranslateName} สามารถเรียกใช้เป็น & quot; early & quot; หรือ "ปลาย" & quot; เทียบกับโมดูลอื่น ๆ
- กำหนดค่า: โดยค่าเริ่มต้นให้โหลดเฉพาะโมดูลที่จำเป็นหรือถูกเลือกโดยอาร์กิวเมนต์ configure --enable-foo เท่านั้น คำสั่ง LoadModule สำหรับโมดูลที่เปิดใช้งานโดย --enable-mods-shared = ส่วนใหญ่และเพื่อนจะได้รับการแสดงความคิดเห็น
- mod_lua: ป้องกันไม่ให้มี hook Lua hook (LuaHookTranslateName และ LuaHookQuickHandler) จากการกำหนดค่าใน,, และ htaccess ซึ่งการตั้งค่าจะถูกละเลย
- mod_lua: แก้ไขปัญหา & quot; พยายามสร้างดัชนีภายใน "r" (ค่า userdata) & quot; ข้อผิดพลาดในสคริปต์ LuaMapHandler
- mod_log_debug: เปลี่ยนชื่ออาร์กิวเมนต์ที่เป็นตัวเลือกจาก if = to expr = เพื่อให้สอดคล้องกับคำสั่ง config อื่น ๆ มากขึ้น
- mod_headers: กำหนดให้นิพจน์ถูกระบุด้วย expr = เพื่อให้สอดคล้องกับคำสั่ง config อื่น ๆ มากขึ้น
- mod_substitute: เพื่อป้องกันการใช้งานหน่วยความจำมากเกินไปให้จำกัดความยาวของบรรทัดไว้ที่ 1MB
- mod_lua: ทำให้สตริงข้อความค้นหา (r.args) สามารถเขียนได้
- mod_include: เพิ่มการสนับสนุนสำหรับการเข้ารหัสและถอดรหัส application / x-www-form-urlencoded
- rotatelogs: เพิ่มตัวเลือก -c เพื่อบังคับให้สร้างไฟล์บันทึกในทุกช่วงการหมุนเวียนแม้ว่าจะว่างเปล่า
- หลัก: จำกัด ap_pregsub () เป็น 64K เพิ่ม ap_pregsub_ex () สำหรับสตริงที่ยาวขึ้น
- mod_session_crypto: Refactor เพื่อสนับสนุน apr_crypto API ใหม่
- http: เพิ่มส่วนหัวข้อมูลตำแหน่งที่ขาดหายไปหากใช้เส้นทาง URL ท้องถิ่นเป็น ErrorDocument เป็นเวลา 30x
- mod_buffer: ตรวจสอบให้แน่ใจว่าเราลงจาก subrequests แต่ไม่ใช่สำหรับการเปลี่ยนเส้นทางภายในที่เรียกใช้โดย mod_rewrite
- mod_lua: เพิ่ม r: construct_url เป็น wrapper สำหรับ ap_construct_url
- mod_remote_ip: แก้ไขการกำหนดค่าพร็อกซีภายใน PR 49272
- mpm_winnt: ใช้โหมด AcceptFilter 'none' ไม่ถูกต้อง; แก้ไขจุดเชื่อมต่อ IP เซิร์ฟเวอร์และ IP ไคลเอ็นต์ระยะไกลเมื่อเชื่อมต่อ
- mod_setenvif: ลบการจับคู่ OID ซึ่งเก่ากว่าโดย SetEnvIfExpr กับ PeerExtList ()
- mpm_prefork, mpm_worker, mpm_event: ถ้าเด็กถูกสร้างขึ้นมาก่อนที่จะเริ่มต้นใหม่อย่างสง่างามและออกจากล็อกไฟล์ที่ขาดหายไปอย่าปิดเซิร์ฟเวอร์ทั้งหมด PR 39311
- mpm_event: ตรวจสอบค่าที่ส่งคืนจาก ap_run_create_connection PR: 41194
- mod_mime_magic: เพิ่มลายเซ็นสำหรับ PNG และ SWF ในตัวอย่าง config PR: 48352
- core, unixd: เพิ่ม -D DUMP_RUN_CFG เพื่อถ่ายโอนรายการกำหนดค่าบางอย่างจาก config ที่แยกวิเคราะห์ (หรือค่าเริ่มต้น) นี่เป็นประโยชน์สำหรับสคริปต์ init ที่ต้องตั้งค่าไดเรกทอรีและสิทธิ์ชั่วคราว
- core, mod_actions, mod_asis: ลดข้อผิดพลาดในข้อความบันทึกที่มาพร้อมกับสถานะคำขอ 404 จากข้อผิดพลาด loglevel ไปยังข้อมูล PR: 35768
- core: แก้ไข hook sorting ด้วยโมดูล Perl PR: 45076
- หลัก: บังคับใช้ LimitRequestFieldSize หลังจากรวมส่วนหัวที่มีชื่อเดียวกันแล้ว
- mod_ssl: ถ้าตั้งค่า MaxMemFree ให้สอบถาม OpenSSL & gt; = 1.0.0 เพื่อลดการใช้หน่วยความจำ PR 51618
- mod_ssl: เมื่อเริ่มต้นเมื่อตรวจสอบใบรับรองของเซิร์ฟเวอร์ไม่ว่าจะตรงกับ ServerName ที่กำหนดค่าให้ใช้รายการ dNSName ในส่วนขยาย subjectAltName ในบัญชีหรือไม่ PR 32652, PR 47051
- mod_substitute: ลดการใช้หน่วยความจำและการคัดลอกข้อมูล PR 50559
- mod_ssl / proxy: เปิดใช้งานส่วนขยาย SNI สำหรับการเชื่อมต่อ TLS แบ็กเอนด์
- เพิ่มห่อสำหรับ malloc, calloc, realloc ที่ตรวจสอบว่าไม่มีสถานการณ์ในหน่วยความจำและใช้งานได้ในหลายแห่ง PR 51568, PR 51569, PR 51571
- แก้ไข cross-compilation ของ mod_cgi / mod_cgid เมื่อ APR_HAVE_STRUCT_RLIMIT เป็นเท็จ แต่กำหนด RLIMIT_ * PR51371.
- core: ปฏิบัติตาม ServerName / ServerAlias อย่างถูกต้องหากส่วนหัว Host จากคำขอตรงกับที่อยู่ VirtualHost PR 51709
- mod_unique_id: ใช้เครื่องกำเนิดตัวเลขแบบสุ่มเพื่อเริ่มต้นตัวนับ PR 45110
- หลัก: เพิ่มความสะดวกสบาย API สำหรับ apr_random
- หลัก: เพิ่มคำสั่ง MaxRangeOverlaps และ MaxRangeReversals เพื่อควบคุมจำนวนช่วงที่ทับซ้อนกันและย้อนกลับ (ตามลำดับ) ที่ได้รับอนุญาตก่อนส่งคืนทรัพยากรทั้งหมดโดยมีค่าเริ่มต้นคือ 20
- mod_ldap: ฟังก์ชั่นเสริม uldap_ssl_supported (r) จะคืนค่าเท็จเสมอหากถูกเรียกจากโฮสต์เสมือนที่มีคำสั่ง mod_ldap อยู่ในนั้น ไม่ได้ส่งผลต่อการใช้ mod_authnz_ldap ของ mod_ldap
- mod_filter: แทนที่จะวางส่วนหัว Accept-Ranges เมื่อมีการใช้ตัวกรองที่ลงทะเบียนกับ AP_FILTER_PROTO_NO_BYTERANGE ให้ตั้งค่าส่วนหัวเป็น & quot; none & quot;
- หลัก: อนุญาตให้ MaxRanges ไม่มี | ไม่ จำกัด | เริ่มต้นและตั้งค่า 'Accept-Ranges: none' ในกรณีที่ช่วงที่กำลังละเลย MaxRanges ไม่มีเลย
- mod_ssl: ปรับปรุงการตรวจสอบการเพิกถอนตาม CRL เมื่อตรวจสอบใบรับรองของไคลเอ็นต์หรือพร็อกซีเซิร์ฟเวอร์ มอบสิทธิ์ในการประมวลผล CRL ทั้งหมดให้ OpenSSL และเพิ่มคำสั่ง CARevocationCheck [Proxy] ใหม่เพื่อควบคุมโหมดการตรวจสอบการเพิกถอน
- 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: เปิดใช้ LDAPConnectionTimeout สำหรับชุดเครื่องมือ LDAP ที่มี LDAP_OPT_CONNECT_TIMEOUT แทน LDAP_OPT_NETWORK_TIMEOUT เช่น Tivoli Directory Server 6.3 และใหม่กว่า
- mod_ldap: เปลี่ยนหมายเลขเริ่มต้นของการลองใหม่ตั้งแต่ 10 ถึง 3 และเพิ่ม LDAPRetries และ LDAPRetryDelay directives
- mod_authnz_ldap: อย่าลองใหม่ระหว่างการตรวจสอบสิทธิ์เพราะนี่เป็นการคูณการลองใหม่ที่ทำเสร็จแล้วโดย mod_ldap
- configure: อนุญาตให้ปิดใช้โมดูลอย่างชัดเจนแม้จะมีการเลือกโมดูล 'reallyall'
- mod_rewrite: ตรวจสอบความถูกต้องของแต่ละ internal (int :) RewriteMap แม้ว่า RewriteEngine จะถูกปิดใช้งานในบริบทของเซิร์ฟเวอร์หลีกเลี่ยงความผิดพลาดขณะอ้างอิง int int: map เมื่อรันไทม์ PR 50994
- mod_ssl กำหนดค่า: ต้องใช้ OpenSSL 0.9.7 หรือสูงกว่า
- mod_ssl: ลบเลเยอร์ ssl_toolkit_compat
- mod_ssl, configure, ab: ยกเลิกการสนับสนุนชุดเครื่องมือ SSL ของ RSA BSAFE
- mod_usertrack: เรียกใช้ mod_usertrack ก่อนหน้านี้ใน hook ของ fixups เพื่อให้แน่ใจว่าคุกกี้ถูกตั้งค่าไว้เมื่อโมดูลเช่น mod_rewrite เรียกใช้การเปลี่ยนเส้นทาง ใช้ r- & gt; err_headers_out สำหรับคุกกี้ด้วยเหตุผลเดียวกัน PR29755.
- mod_proxy_http, mod_proxy_connect: เพิ่มบันทึกคำขอของ 'proxy-status' และ 'proxy-source-port' สำหรับการบันทึก PR 30195
- configure: เปิดใช้โมดูล ldap ในส่วนที่เลือก 'all' และ 'most' ถ้า ldap ถูกคอมไพล์เข้าไปใน apr-util
- หลัก: เพิ่ม ap_check_cmd_context () - ตรวจสอบว่ามีการเรียกใช้คำสั่งในไฟล์. htaccess หรือไม่
- mod_deflate: แก้ไขวนรอบที่ไม่มีที่สิ้นสุดถ้าส่วนหัวแรกเป็นข้อมูลเมตา PR 51590
- mod_authn_socache: แก้ไขการทำงานใน. htaccess หากไม่ได้กำหนดค่าไว้ที่ httpd.conf และแนะนำ directive ของ AuthnCacheEnable PR 51991
- mod_xml2enc: โมดูลใหม่ (ก่อนหน้านี้ของบุคคลที่สาม) สนับสนุนการใช้สากลสำหรับตัวกรองผ่านการดมกลิ่นและการแปลงชุดอักขระแบบสมาร์ท
- mod_proxy_html: โมดูลใหม่ (ก่อนหน้านี้ของบุคคลที่สาม) เพื่อแก้ไขลิงก์ HTML ในสถานะพร็อกซีย้อนกลับโดยที่แบ็กเอนด์สร้าง URL ที่ไม่สามารถแก้ไขได้โดยไคลเอ็นต์
- รุ่นนี้มี Apache Portable Runtime (เมษายน)
มีอะไรใหม่ ) รุ่น 1.4.5 และรุ่น APR-Util 1.3.12 ใน tarball ที่แยกต่างหาก -deps ไลบรารี APR ต้องได้รับการอัปเกรดสำหรับคุณลักษณะทั้งหมดของ httpd เพื่อให้ทำงานได้อย่างถูกต้อง
มีอะไรใหม่ ในเวอร์ชัน 2.4.10:
มีอะไรใหม่ ในเวอร์ชัน 2.2.26:
มีอะไรใหม่ ในเวอร์ชัน 2.4.7:
มีอะไรใหม่ ในเวอร์ชัน 2.4.1:
มีอะไรใหม่ ในรุ่น 2.3.15 Beta:
มีอะไรใหม่ ในเวอร์ชัน 2.4.18:
มีอะไรใหม่ ในเวอร์ชัน 2.4.17:
มีอะไรใหม่ ในเวอร์ชัน 2.4.16:
มีอะไรใหม่ ในเวอร์ชัน 2.4.27:
มีอะไรใหม่ ในเวอร์ชัน 2.4.25:
มีอะไรใหม่ ในเวอร์ชัน 2.4.23:
มีอะไรใหม่ ในเวอร์ชัน 2.4.33:
ความคิดเห็นที่ไม่พบ