Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menguatkuasakan SSL/HTTPS di Seluruh Tapak atau Halaman Khusus Menggunakan .htaccess dan mod_rewrite?

Bagaimana untuk Menguatkuasakan SSL/HTTPS di Seluruh Tapak atau Halaman Khusus Menggunakan .htaccess dan mod_rewrite?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-15 13:30:16768semak imbas

How to Enforce SSL/HTTPS Site-Wide or Page-Specifically Using .htaccess and mod_rewrite?

Cara Menguatkuasakan SSL/HTTPS di Seluruh Tapak atau Halaman Secara Khusus Menggunakan .htaccess dan mod_rewrite

Untuk melaksanakan penguatkuasaan SSL/HTTPS dalam PHP menggunakan .htaccess dan mod_rewrite, pertimbangkan perkara berikut pendekatan:

Penguatkuasaan Seluruh Tapak

Menggunakan mod_ssl:

  • Sertakan arahan berikut dalam .htaccess anda fail:

    SSLRequireSSL

Menggunakan mod_rewrite:

  • Tambah peraturan tulis semula ini pada anda .htaccess:

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

Penguatkuasaan Khusus Halaman dalam PHP

Jika .htaccess dilumpuhkan pada pelayan anda, anda boleh menguatkuasakan SSL/ HTTPS dari dalam PHP:

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();
    }
}

Tambahan Sumber

Rujuk sumber berikut untuk mendapatkan maklumat lanjut:

  • [mod_ssl SSLRequireSSL Directive](https://httpd.apache.org/docs/2.4/mod/ mod_ssl.html#sslrequiresssl)
  • [mod_rewrite Dokumentasi](https://httpd.apache.org/docs/2.4/rewrite/)
  • [Penulis Semula Pelayan HTTP Apache](http://www.askapache.com/htaccess/http-https-rewriterule -redirect.html)

Atas ialah kandungan terperinci Bagaimana untuk Menguatkuasakan SSL/HTTPS di Seluruh Tapak atau Halaman Khusus Menggunakan .htaccess dan mod_rewrite?. 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