簡體   English   中英

在Zend Framework中強制HTTP到HTTPS重定向

[英]Force HTTP to HTTPS Redirect in Zend Framework

您好,目前我是從Godaddy購買的SSL證書,並安裝在LoadBalancer上。 我有一個zend框架應用程序,但是我有網站重定向到Https的問題。 以下是我找到的將我的網站重定向到https的最簡單方法的Bootstrap代碼:

 protected function _initForceSSL() {
     if($_SERVER['SERVER_PORT'] != '443') {
      header('Location: https://' . $_SERVER['HTTP_HOST'] . 
                $_SERVER['REQUEST_URI']);
      exit();
    }

不幸的是服務器錯誤返回。 我在這里想念什么? 謝謝

更新:

文件根目錄中的.htaccess

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ public/index.php [NC,L]

由於使用的是Zend Framework,因此可以在.htaccess文件中嘗試以下代碼:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.yoursite.com/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ public/index.php [NC,L]

讓我知道它是否有效!

只需將此功能添加到您的Bootstrap文件中:

protected function _initForceSSL() {
    if($_SERVER['SERVER_PORT'] != '443') {
        header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
        exit();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM