Você está na página 1de 3

Redirecionamento automático de HTTP para

HTTPS
De Wiki InfoLink

Atenção: Antes do uso destes exemplos de redirecionamento certifique-se de estar utilizando um


certificado SSL em seu domínio, conforme descrito neste artigo.

A seguir listamos alguns exemplos de como 'forçar' o uso do SSL em páginas a serem criptografadas.

Assim o protocolo HTTPS será exibido na frente do domínio (ex. https://dominio.com.br) e ícone de
cadeado, contendo as informações do certificado do seu site.

Índice
1 Exemplo em ASP
2 Exemplo em ASP.NET
3 Exemplo em PHP
4 Exemplo em htaccess
5 Exemplo em web.config
6 Veja Também

Exemplo em ASP
Crie um arquivo chamado 'SSL.asp' e adicione o código abaixo:

<%
If Request.ServerVariables("SERVER_PORT")=80 Then
Dim strSecureURL
strSecureURL = "https://"
strSecureURL = strSecureURL & Request.ServerVariables("SERVER_NAME")
strSecureURL = strSecureURL & Request.ServerVariables("URL")
Response.Redirect strSecureURL
End If
%>

A seguir, insira o código do include para forçar o uso do SSL, conforme exemplo:

<!--#include virtual="/SSL.asp"-->
<!--#include file="SSL.asp"-->

include file: Tem em conta o lugar onde está o documento no qual estamos incluindo o arquivo.
include virtual: Pode ser mais útil trabalhar com o modo "virtual" pois se movemos de diretório as
páginas de nosso site os includes continuarão funcionando.

Exemplo em ASP.NET
<% @ Page Language = "C #"%>

<! DOCTYPE html PUBLIC "- // W3C // DTD XHTML 1.1 // PT" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd

<Script runat = "server">


protected void Page_Load (object sender, System.EventArgs e)
{
if (Request.ServerVariables ["HTTP_CLUSTER_HTTPS"]! = "on")
{
if (Request.ServerVariables.Get ("HTTP_CLUSTER_HTTPS") == null)
{
xredir__ corda, xqstr__;

xredir__ = "https: //" + Request.ServerVariables ["SERVER_NAME"];


xredir__ + = Request.ServerVariables ["script_name"];
xqstr__ = Request.ServerVariables ["QUERY_STRING"];

if (xqstr__! = "")
xredir__ = xredir__ + "?" + Xqstr__;

Response.Redirect (xredir__);
}
}
Response.Write ("Só SSL");
}

</ Script>

<Html>
<Head id = runat = "server" "Head1">
<Title> Só SSL </ title>
</ Head>

<Body>
</ Body>
</ Html>

Exemplo em PHP
Para páginas em PHP, crie um arquivo 'SSL.php' e adicione o código abaixo:

<?
{
$new_url = "https://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
header("Location: $new_url");
exit;
}

ForceHTTPS(); //para chamar a função

?>

E como no exemplo acima, basta colocar um include nas páginas o qual deseja que trabalhe em ambiente
seguro, como no exemplo a seguir:

<?php
include("SSL.php");
?>

Exemplo em htaccess
Regra utilizando Mod_Rewrite no Apache para redirecionar paginas em http para https.

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

Exemplo em web.config
Segue exemplo de código:

<?xml version="1.0" encoding="UTF-8"?>


<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTPS Redirect" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_X_FORWARDED_PROTO}" pattern="https" negate="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Veja Também
Scripts para Redirecionamento de URL

Disponível em "https://wiki.infolink.com.br/index.php?
title=Redirecionamento_automático_de_HTTP_para_HTTPS&oldid=12890"
Categorias: Asp Asp.Net PHP SSL

Esta página foi modificada pela última vez à(s) 12h42min de 19 de setembro de 2017.
Esta página foi acessada 5 917 vezes.