Как легко создать форму входа в HTTPS? - PullRequest
1 голос
/ 13 декабря 2011

Я новичок в веб-программировании. Я создал простую форму входа (с php). Теперь я хочу превратить это в форму входа HTTPS (с SSL). Что я должен сделать, чтобы достичь этого?

Ответы [ 2 ]

5 голосов
/ 13 декабря 2011

Получить сертификат SSL. После того, как HTTPS работает на вашем сервере (обратитесь к хостинговой компании, чтобы он заработал), вы можете использовать код, подобный следующему, для установки HTTPS-соединения в PHP. .htaccess - это еще один вариант, упомянутый в другом месте.

<?

function current_protocol()
{
    $protocol = 'http';

    if ( array_key_exists( 'HTTPS', $_SERVER ) && $_SERVER['HTTPS'] === 'on' )
    {
        $protocol = 'https';
    }

    return $protocol;
}
//------------------------------------------------------------------------
function current_has_ssl()
{
    return current_protocol() == 'https';
}
//------------------------------------------------------------------------
function force_https()
{
    if ( current_has_ssl() == false )
    {
        header( "HTTP/1.1 301 Moved Permanently" );
        header( 'Location: https://example.com' );
        exit();
    }
}

//------------------------------------------------------------------------
// Usage:

force_https(); // at the top of a script before any output.
4 голосов
/ 13 декабря 2011

Вам нужно будет включить SS L, если он еще не включен. Если вы собираетесь запустить его в работе, вам также потребуется приобрести и установить сертификат SSL вместо самозаверяющегоcert.

Если включен протокол SSL, то запуск формы с https вместо http, как сказано в приведенном выше комментарии, будет работать

Чтобы заставить пользователей использовать версию SSL, добавьте в свой файл что-то вроде следующегоФайл .htaccess

RewriteEngine On
Rewritebase /

RewriteCond %{HTTPS} off
RewriteRule ^login\.php https://yourdomain.com/login.php [L,R=301]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...