หากคุณไม่ได้ใช้ HTTP Authentication กับ WordPress คุณสามารถลบออกได้
หากคุณใช้ PHP เป็นโมดูล Apache คุณสามารถลบออกได้ (บางที WP อาจตรวจพบสิ่งนี้เมื่อสร้างไฟล์ .htaccess
ไฟล์?)
นอกเหนือ: อย่างไรก็ตาม เนื่องจากคำสั่งนี้อยู่ในบล็อกโค้ดของ WordPress (เช่น ระหว่าง # เริ่มต้น WordPress
/ # จบเวิร์ดเพรส
เครื่องหมายความคิดเห็น) หากคุณลบออก WordPress ก็จะ "ลอง" และนำกลับเข้าไปใหม่ในภายหลัง (คุณควรหลีกเลี่ยงการแก้ไขบล็อกรหัส WP ด้วยตนเองด้วยเหตุผลนี้)
มีคำสั่งนี้ใน .htaccess
จะไม่เกิดปัญหาใดๆ
เมื่อติดตั้ง PHP เป็น CGI แล้ว Apache จะป้องกัน การอนุญาต
ส่วนหัวคำขอ HTTP (ใช้กับการตรวจสอบสิทธิ์ HTTP) ไม่ให้ส่งผ่านไปยังสคริปต์ CGI (เช่น PHP ในกรณีนี้) นี่คือ "ฟีเจอร์ความปลอดภัย" เพื่อป้องกันไม่ให้ข้อมูลประจำตัวของผู้ใช้ถูกส่งไปยังสคริปต์ CGI ทั้งหมด (ซึ่งอาจไม่น่าเชื่อถือ หากคุณไม่ได้ควบคุมเซิร์ฟเวอร์)
PHP ปกติจะตั้งค่า $_SERVER['HTTP_AUTHORIZATION']
superglobal (และองค์ประกอบอาร์เรย์ที่เกี่ยวข้อง) จากส่วนหัว HTTP Authorization แต่ถ้า Apache ถูกดึงออกก็จะทำไม่ได้
เดอะ เขียนกฎใหม่
คำสั่งใน .htaccess
พยายามที่จะ "แก้ไข" สิ่งนี้โดยการตั้งค่า HTTP_AUTHORIZATION
ตัวแปรสภาพแวดล้อมเป็นค่าของ การอนุญาต
ส่วนหัวคำขอ HTTP (นี่คือก่อนที่จะส่งคำขอไปยัง PHP) จากนั้น PHP จะกำหนดให้ HTTP_AUTHORIZATION
env var ถึง $_SERVER
อาร์เรย์ superglobal ตามทฤษฎีแล้ว มันก็ทำแบบเดียวกัน อย่างไรก็ตาม ขึ้นอยู่กับการกำหนดค่าของเซิร์ฟเวอร์ ซึ่งไม่จำเป็นต้องใช้งานได้
อีกทางหนึ่ง หากต้องการอนุญาต "การส่งผ่านส่วนหัวการให้สิทธิ์ HTTP ไปยังสคริปต์เป็นตัวแปร CGI" อย่างชัดเจน คุณสามารถตั้งค่าได้ CGIPassAuth เปิดอยู่
(อาปาเช่ 2.4.13+) ใน .htaccess
และสิ่งนี้ควรอนุญาตให้ PHP มองเห็นไฟล์ การอนุญาต
หัวข้อ. อย่างไรก็ตาม ขึ้นอยู่กับการกำหนดค่าของเซิร์ฟเวอร์ สิ่งนี้อาจไม่ทำงานเช่นกัน
อ้างอิง: