ฉันได้ตั้งค่าไฟล์. htaccess เป็นค่าต่อไปนี้:
Header set MyHeader "I'm Set!"
หากฉันไปที่ไดเรกทอรีนั้น ( http://example.com/test/
) ซึ่งไม่มีไฟล์ดัชนีเริ่มต้นและดูกิจกรรมเครือข่าย (ในกรณีนี้ด้วย Chrome) ฉันจะเห็นว่าส่วนหัวกำลังถูกส่ง หากฉันไปที่ไฟล์ php ( http://example.com/test/test.php
) ส่วนหัวจะไม่ถูกส่ง
ฉันได้สร้าง index.html (โดยมี<pre>Hi
เนื้อหาเหมือนกัน) และได้รับการส่ง ฉันเปลี่ยนชื่อไฟล์เป็น.php
ไม่มีส่วนหัว ถ้าฉันเปลี่ยน orignal test.php
เป็นtest.html
มันจะแสดงผลรหัสขยะและส่วนหัวจะถูกส่ง หากฉันเปลี่ยนtest.php
เป็นtest.png
ฉันจะได้รับไอคอนรูปภาพที่เสียหายและส่วนหัวจะถูกส่ง
ดังนั้นหากไม่มีการทดสอบนอกเหนือจากด้านบนในแง่ของ mime-type และนามสกุลไฟล์จะปรากฏเฉพาะ.php
ไฟล์ (legit หรืออย่างอื่น) ที่ตั้งค่าเป็นไม่มี. htaccess ใช้กฎหรือคำสั่ง mod_headers โดยเฉพาะ แต่ฉันไม่ทราบวิธีทดสอบสิ่งนี้และเนื่องจากเป็นเซิร์ฟเวอร์ที่ใช้ร่วมกันฉันจึงไม่httpd.conf
สามารถเข้าใช้งานได้
ความคิดใด ๆ เกี่ยวกับสาเหตุที่ Apache จะข้ามการส่งส่วนหัวสำหรับไฟล์ php?
ฉันยังลอง:
<FilesMatch "\.(php)$">
Header set MyHeader "I'm Set!"
</FilesMatch>