ฉันมีหน้าเดียวที่ฉันต้องการบังคับให้เข้าถึงได้เป็นหน้า HTTPS (PHP บน Apache) ฉันจะทำสิ่งนี้โดยไม่ทำให้ทั้งไดเร็กทอรีต้องการ HTTPS ได้อย่างไร หรือถ้าคุณส่งแบบฟอร์มไปยังหน้า HTTPS จากหน้า HTTP มันจะส่งโดย HTTPS แทน HTTP หรือไม่?
นี่คือตัวอย่างของฉัน:
http://www.example.com/some-page.php
ฉันต้องการให้เข้าถึงได้ผ่าน:
https://www.example.com/some-page.php
แน่นอนว่าฉันสามารถใส่ลิงก์ทั้งหมดไปยังหน้านี้ซึ่งชี้ไปที่รุ่น HTTPS แต่นั่นก็ไม่ได้ทำให้คนโง่บางคนเข้าถึงมันผ่านทาง HTTP โดยมีวัตถุประสงค์ ...
สิ่งหนึ่งที่ฉันคิดคือการเปลี่ยนเส้นทางในส่วนหัวของไฟล์ PHP เพื่อตรวจสอบให้แน่ใจว่าพวกเขากำลังเข้าถึงรุ่น HTTPS:
if($_SERVER["SCRIPT_URI"] == "http://www.example.com/some-page.php"){
header('Location: https://www.example.com/some-page.php');
}
แต่นั่นไม่ใช่วิธีที่ถูกต้องใช่ไหม