Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menguatkuasakan SSL/HTTPS pada Halaman PHP Tertentu?

Bagaimanakah Saya Boleh Menguatkuasakan SSL/HTTPS pada Halaman PHP Tertentu?

Patricia Arquette
Patricia Arquetteasal
2024-12-29 18:19:10524semak imbas

How Can I Enforce SSL/HTTPS on Specific PHP Pages?

Menguatkuasakan SSL/https pada Halaman PHP Tertentu Menggunakan .htaccess dan mod_rewrite

Untuk menguatkuasakan SSL/https pada halaman PHP tertentu, seseorang boleh menggunakan Mod_ssl dan mod_rewrite Apache modul.

mod_ssl Apache

Arahan SSLRequireSSL menguatkuasakan SSL dengan melarang akses melainkan HTTPS digunakan. Arahan ini berguna dalam hos atau direktori maya yang didayakan SSL, menghalang pendedahan kandungan yang dilindungi akibat ralat konfigurasi.

mod_rewrite dalam .htaccess

Untuk mengubah hala ke HTTPS, mod_rewrite boleh digunakan dalam .htaccess dengan yang berikut kod:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Penyelesaian PHP

Jika .htaccess dilumpuhkan, kod PHP berikut boleh digunakan:

if (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] !== 'on') {
    if(!headers_sent()) {
        header("Status: 301 Moved Permanently");
        header(sprintf(
            'Location: https://%s%s',
            $_SERVER['HTTP_HOST'],
            $_SERVER['REQUEST_URI']
        ));
        exit();
    }
}

Sumber tambahan pada mengubah hala ke HTTPS:

  • http://www.askapache.com/htaccess/http-https-rewriterule-redirect.html

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menguatkuasakan SSL/HTTPS pada Halaman PHP Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn