Redirect de pe HTTP pe HTTPS (ssl) in PHP

iNoob | Stefanescu Mihai | 2020-10-11

Majoritatea platformelor e-commerce folosesc gateway-uri de plata online, iar acestea folosesc conexiuni SSL (secure socket layer) pentru a transfera informatiile.

In acest scenariu, chiar daca majoritatea siteurilor folosesc protocolul HTTP, putem folosi protocolul HTTPS, ceea ce inseamna ca trebuie sa redirectionam toti userii catre adreasa site-ului folosind protocolul acesta.

Pentru a intelege la ce ma refer, puteti scrie http://www.gmail.com in browser si se poate observa ca sunteti redirectionati automat catre protocolul https.

Redirect catre protocolul https in PHP

In primul rand trebuie sa stii ca SSL-ul trebuie instalat pe server. Pentru a redirectiona utilizatorii catre acest protocol trebuie sa stim daca site-ul foloseste sau nu SSL. Pentru a afla asta PHP ne pune la dispozitie o variabila $_SERVER[‘HTTPS’] ce returneaza ‘on’ in cazul in care avem SSL.

function redirectToHTTPS()
{
  if($_SERVER['HTTPS']!="on")
  {
     $redirect= "https://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
     header("Location:$redirect");
  }
}

Functia de mai sus este destul de simpla, nu trebuie decat sa o apelezi pe pagina dorita.

Redirecting catre HTTPS folosind .htaccess

Puteti folosi functia de mai sus pe fiecare pagina, dar mai simplu ar fi sa scrieti urmatoarele linii de cod in fisierul .htaccess.

  RewriteEngine On
  RewriteCond %{HTTPS} !on
  RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Doar copiati codul acesta in fisierul .htaccess si utilizatorii sunt redirectionati pe protocolul HTTPS


Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ