Перенаправление SSL в CakePHP - PullRequest
0 голосов
/ 01 марта 2012

как мы можем перенаправить "http://www.example.com" в" https://www.example.com", когда пользователь вводит "http://www.example.com" в cakePHP?

Ответы [ 2 ]

2 голосов
/ 01 марта 2012

Вы можете использовать файл .htacces, чтобы сделать это перед загрузкой любого php.Тогда серверам не нужно загружать скрипты PHP

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
0 голосов
/ 20 сентября 2014

Хотя в настоящее время принятый ответ сфокусирован на использовании модуля rewrite apache, существует ряд случаев, когда этот ответ неприменим, для очевидного примера, когда apache вообще не используется или когда модуль перезаписи не используется.'t и не может быть включен.

Так что более общий ответ будет включать в себя добавление этого к вашему AppController

public function beforeFilter(Event $event) {
    if (!env('HTTPS')) {
        return $this->redirect('https://' . $this->request->host() . $this->request->here(), 301);
    }
}

, что сделает перманентное перенаправление на тот же URL-адрес подhttps, если https не используется.

Вы не указываете версию торта, поэтому вышеприведенный код - это CakePHP 3, просто удалите Event $event из аргументов функции, чтобы сделать его Cake 2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...