15%

Economisește 15% la toate serviciile de găzduire

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul:

Skills
Începeți
10.10.2024

Cum să Instalați un Certificate SSL pe Site-ul Dvs. WordPress

Un certificat SSL (Secure Sockets Layer / TLS) este o legătură de protocol criptografic care criptează datele în tranzit între un server web și un browser. Pe un site WordPress, instalarea SSL înseamnă că fiecare cerere HTTP este redirecționată către HTTPS, browserul afișează un lacăt, iar datele sensibile — credențiale de autentificare, trimiteri de formulare, detalii de plată — călătoresc printr-un canal criptat, nu în text simplu.

Pentru WordPress în mod specific, instalarea SSL implică trei straturi distincte: furnizarea certificatului la nivelul serverului sau al găzduirii, configurarea WordPress în sine pentru a servi toate resursele prin HTTPS și eliminarea avertismentelor de conținut mixt care compromit silențios contextul securizat. Dacă ratați oricare dintre acestea, site-ul dvs. va afișa fie un lacăt defect, fie va declanșa avertismente de securitate ale browserului, fie va eșua complet validarea HTTPS.

Pasul 1: Alegeți Tipul Corect de Certificat SSL

Nu toate certificatele SSL oferă același nivel de validare sau semnal de încredere. Selectarea tipului greșit este o greșeală comună care risipește bani sau, în direcția opusă, protejează insuficient un site care gestionează tranzacții sensibile.

Compararea Nivelurilor de Validare

Tip CertificatNivel de ValidareTimp de EmitereRecomandat PentruSemnal de Încredere Browser
**Domain Validated (DV)**Doar proprietatea domeniuluiMinute până la oreBloguri, site-uri personale, medii de dezvoltarePictogramă lacăt
**Organization Validated (OV)**Domeniu + entitate juridică1–3 zile lucrătoareSite-uri de afaceri, portaluri SaaSLacăt + detalii organizație în certificat
**Extended Validation (EV)**Verificare juridică + operațională completă1–5 zile lucrătoareE-commerce, banking, portaluri de înaltă încredereLacăt + numele organizației (unele browsere)
**Wildcard DV/OV**Domeniu + toate subdomeniileMinute până la zileImplementări cu mai multe subdomeniiLacăt
**Multi-Domain (SAN)**Mai multe domenii distincteMinute până la zileAgenții care gestionează mai multe proprietățiLacăt

SSL Gratuit vs. Plătit

Let's Encrypt emite certificate DV gratuite, automatizate, valabile 90 de zile cu suport de reînnoire automată prin protocolul ACME. Este de încredere pentru toate browserele majore și este alegerea corectă pentru marea majoritate a site-urilor WordPress. Fereastra scurtă de valabilitate este intenționată — forțează automatizarea și reduce fereastra de risc a unui certificat compromis.

SSL-ul gratuit Cloudflare funcționează diferit: criptează conexiunea dintre vizitator și marginea Cloudflare, dar conexiunea dintre Cloudflare și serverul dvs. de origine poate rămâne necriptată dacă nu configurați modul Full (Strict) cu un certificat de origine valid. Acesta este un caz limită frecvent înțeles greșit, care creează o falsă senzație de securitate.

Certificatele plătite de la CA-uri comerciale (DigiCert, Sectigo, GlobalSign) sunt necesare când aveți nevoie de validare OV sau EV, o garanție sau o configurație specifică SAN/Wildcard neacceptată de Let's Encrypt.

Dacă trebuie să achiziționați un certificat de încredere pentru domeniul dvs., AlexHost oferă Certificate SSL cu emitere și gestionare simplă direct din panoul contului dvs.

Pasul 2: Instalați Certificatul SSL la Nivelul Găzduirii

Certificatul trebuie instalat pe serverul web înainte ca WordPress să poată servi răspunsuri HTTPS. Metoda depinde de mediul dvs. de găzduire.

Instalarea SSL prin cPanel (Găzduire Partajată și VPS)

cPanel este cel mai comun panou de control pentru mediile partajate și gestionate. Dacă gazda dvs. folosește AutoSSL (susținut de Sectigo) sau acceptă Let's Encrypt nativ, un singur clic furnizează și reînnoiește certificatul automat.

Pași de instalare manuală când aveți fișiere de certificat de la un CA:

  1. Conectați-vă la cPanel și navigați la Security > SSL/TLS.
  2. Faceți clic pe Manage SSL Sites.
  3. Selectați domeniul țintă din lista derulantă.
  4. Lipiți conținutul a trei fișiere în câmpurile corespunzătoare:
  • Certificate (CRT): Certificatul semnat de CA-ul dvs.
  • Private Key (KEY): Generat în timpul creării CSR — nu îl partajați niciodată.
  • Certificate Authority Bundle (CABUNDLE): Certificatele lanțului intermediar.
  1. Faceți clic pe Install Certificate.

Dacă rulați WordPress pe un VPS cu cPanel, AutoSSL gestionează de obicei acest lucru automat pentru toate domeniile din WHM. Verificați în WHM > SSL/TLS > Manage AutoSSL că domeniul este acoperit și că certificatul nu se află într-o stare de așteptare sau eșec.

Instalarea SSL pe un VPS cu Apache (Metodă Manuală)

Pe un VPS Linux auto-gestionat care rulează Apache, procesul necesită editarea directă a configurației virtual host.

Instalați Certbot (clientul Let's Encrypt) pe Debian/Ubuntu:

sudo apt update
sudo apt install certbot python3-certbot-apache -y

Obțineți și instalați certificatul automat:

sudo certbot --apache -d yourdomain.com -d www.yourdomain.com

Certbot modifică configurația virtual host Apache, instalează certificatul și configurează un cron job sau un timer systemd pentru reînnoire automată. Verificați că timerul de reînnoire este activ:

sudo systemctl status certbot.timer

Pentru Nginx pe un VPS:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

Instalarea manuală a certificatului pe Apache (când folosiți un certificat CA plătit):

Plasați fișierele de certificat într-un director securizat, apoi editați virtual host-ul:

<VirtualHost *:443>
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com
    DocumentRoot /var/www/html

    SSLEngine on
    SSLCertificateFile      /etc/ssl/certs/yourdomain.crt
    SSLCertificateKeyFile   /etc/ssl/private/yourdomain.key
    SSLCertificateChainFile /etc/ssl/certs/yourdomain_ca_bundle.crt
</VirtualHost>

Reporniți Apache pentru a aplica:

sudo systemctl restart apache2

Dacă gestionați o instalare WordPress cu trafic ridicat pe un Server Dedicat, aveți control complet asupra suitelor de cifruri, antetelor HSTS și OCSP stapling — configurații care nu sunt posibile pe găzduirea partajată.

Instalarea SSL pe un VPS cu Nginx (Metodă Manuală)

server {
    listen 443 ssl;
    server_name yourdomain.com www.yourdomain.com;

    ssl_certificate     /etc/ssl/certs/yourdomain.crt;
    ssl_certificate_key /etc/ssl/private/yourdomain.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    # OCSP Stapling
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 1.1.1.1 valid=300s;

    root /var/www/html;
    index index.php;
}

Reîncărcați Nginx după editare:

sudo nginx -t && sudo systemctl reload nginx

Pasul 3: Forțați HTTPS la Nivelul Serverului cu o Redirecționare 301

Înainte de a modifica setările WordPress, aplicați redirecționarea HTTP-la-HTTPS la nivelul serverului. Aceasta este mai fiabilă decât să vă bazați exclusiv pe WordPress sau pe un plugin și împiedică browserul să încarce vreodată versiunea HTTP.

Apache: .htaccess Redirecționare

Deschideți fișierul .htaccess (aflat în rădăcina WordPress, de obicei /var/www/html/.htaccess sau accesibil prin cPanel File Manager) și adăugați următorul bloc deasupra regulilor de rescriere WordPress existente:

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

Capcană critică: Dacă plasați acest bloc *după* marcatorul # BEGIN WordPress, acesta poate fi suprascris de actualizările WordPress core. Plasați întotdeauna regulile de redirecționare la nivel de server deasupra blocului gestionat de WordPress.

Nginx: Redirecționare Bloc Server

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    return 301 https://$host$request_uri;
}

Antet HSTS (Avansat, Recomandat)

Odată ce sunteți sigur că configurația HTTPS este stabilă, adăugați un antet HTTP Strict Transport Security pentru a instrui browserele să nu mai încerce niciodată o conexiune HTTP:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

Avertisment: Nu activați HSTS cu preload până când nu sunteți sigur că fiecare subdomeniu are și el un certificat SSL valid. Preîncărcarea este ireversibilă pe termen scurt și va defecta subdomeniile care nu au HTTPS configurat.

Pasul 4: Actualizați WordPress pentru a Servi Tot Conținutul prin HTTPS

Cu certificatul instalat și redirecționarea la nivel de server activă, WordPress însuși trebuie informat să genereze URL-uri HTTPS pentru toate linkurile interne, resursele și endpoint-urile API.

Opțiunea A: Actualizați Manual URL-urile Site-ului WordPress

  1. Accesați Settings > General în panoul de administrare WordPress.
  2. Schimbați atât WordPress Address (URL) cât și Site Address (URL) din http:// în https://.
  3. Faceți clic pe Save Changes.

WordPress vă va deconecta imediat după salvare. Reconectați-vă folosind URL-ul HTTPS.

Opțiunea B: Actualizați URL-urile prin wp-config.php

Dacă nu puteți accesa panoul de administrare sau preferați o abordare bazată pe cod, adăugați aceste linii în wp-config.php înainte de linia /* That's all, stop editing! */:

define('WP_HOME', 'https://yourdomain.com');
define('WP_SITEURL', 'https://yourdomain.com');

Opțiunea C: Actualizați URL-urile HTTP Hardcodate din Baza de Date

WordPress stochează URL-uri în baza de date, inclusiv date serializate în tabelele post meta și options. Un simplu find-and-replace pe SQL brut poate corupe array-urile serializate. Folosiți WP-CLI pentru o înlocuire sigură, conștientă de serializare:

wp search-replace 'http://yourdomain.com' 'https://yourdomain.com' --skip-columns=guid --all-tables

Flag-ul --skip-columns=guid păstrează GUID-urile postărilor, care nu ar trebui modificate conform bunelor practici WordPress. Rulați această comandă din directorul rădăcină WordPress cu credențialele de bază de date corespunzătoare configurate în wp-config.php.

Alternativ, plugin-ul Better Search Replace efectuează aceeași operațiune prin interfața de administrare cu suport pentru serializare.

Pasul 5: Remediați Avertismentele de Conținut Mixt

Un avertisment de conținut mixt apare când o pagină HTTPS încarcă una sau mai multe resurse (imagini, scripturi, foi de stil, iframe-uri) prin HTTP. Aceasta compromite contextul securizat, suprimă lacătul și, în unele cazuri, determină browserele să blocheze complet resursa.

Diagnosticarea Conținutului Mixt

Deschideți instrumentele pentru dezvoltatori ale browserului (F12), accesați fila Console și căutați avertismente prefixate cu Mixed Content:. Mesajul va identifica URL-ul exact al resursei care cauzează problema.

Alternativ, folosiți instrumentul Why No Padlock? sau rulați o scanare SSL Labs pentru a obține un raport complet.

Remedierea Conținutului Mixt: Metoda cu Plugin

Really Simple SSL este cel mai utilizat plugin în acest scop. După activare, acesta:

  • Setează variabila de server HTTPS pentru a forța WordPress să recunoască conexiunea securizată.
  • Adaugă un filtru de conținut bazat pe JavaScript pentru a rescrie URL-urile HTTP din mers.
  • Opțional, golește regulile de rescriere și actualizează URL-ul site-ului.

SSL Insecure Content Fixer oferă un control mai granular, permițându-vă să alegeți între o înlocuire simplă a bufferului de ieșire și o abordare mai profundă cu hook-uri de filtre WordPress — util când metoda JavaScript a Really Simple SSL cauzează probleme de randare cu anumiți constructori de pagini.

Remedierea Conținutului Mixt: Metoda Manuală

Pentru URL-urile HTTP hardcodate în fișierele temei sau în plugin-uri personalizate, căutați în directorul temei:

grep -r "http://yourdomain.com" /var/www/html/wp-content/themes/your-theme/

Înlocuiți toate aparițiile cu https:// sau, mai bine, folosiți URL-uri relative la protocol (//yourdomain.com/...) pentru resursele terțe unde nu puteți garanta disponibilitatea HTTPS.

Pentru media încărcată înainte de migrarea SSL, rulați comanda WP-CLI search-replace din Pasul 4 dacă nu ați făcut-o deja, deoarece URL-urile atașamentelor de imagini sunt stocate în tabelele wp_posts și wp_postmeta.

Pasul 6: Validați Instalarea SSL

Nu presupuneți niciodată că instalarea a reușit — verificați-o sistematic.

Testul SSL Labs

Navigați la https://www.ssllabs.com/ssltest/ și introduceți domeniul dvs. Un site WordPress configurat corect ar trebui să obțină scorul A sau A+. Un rating A+ necesită:

  • Suport TLS 1.2 și 1.3 cu TLS 1.0 și 1.1 dezactivate.
  • O suită de cifruri puternică (fără RC4, fără 3DES).
  • Antet HSTS prezent.
  • OCSP stapling activat.
  • Fără probleme de lanț (certificate intermediare instalate corect).

Verificare prin Browser

Faceți clic pe pictograma lacăt din bara de adrese. În Chrome, navigați la Connection is secure > Certificate is valid pentru a confirma că emitentul, datele de valabilitate și Subject Alternative Names (SAN-urile) corespund domeniului dvs.

Verificare prin Linie de Comandă

openssl s_client -connect yourdomain.com:443 -servername yourdomain.com

Aceasta afișează lanțul complet de certificate, cifrul negociat și versiunea TLS. Căutați Verify return code: 0 (ok) pentru a confirma că lanțul este de încredere.

Verificați Expirarea Certificatului

echo | openssl s_client -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -dates

Pentru certificatele Let's Encrypt, verificați și că rularea de test a reînnoirii automate funcționează:

sudo certbot renew --dry-run

Pasul 7: Întărire Post-Instalare și Curățare SEO

Actualizați Google Search Console

Adăugați versiunea HTTPS a site-ului dvs. ca o nouă proprietate în Google Search Console. Google tratează http:// și https:// ca proprietăți separate. Trimiteți sitemap-ul HTTPS (https://yourdomain.com/sitemap.xml) pentru a accelera re-crawlarea URL-urilor actualizate.

Actualizați Sitemap-ul și Etichetele Canonice

Asigurați-vă că sitemap-ul XML (generat de Yoast SEO, Rank Math sau similar) generează exclusiv URL-uri HTTPS. Verificați că etichetele canonice din <head> temei dvs. fac referire la HTTPS. O etichetă canonică care indică versiunea HTTP a unei pagini va deruta crawlerele chiar dacă redirecționarea 301 este activă.

Notificați Google despre Schimbare

În Google Search Console, folosiți instrumentul Change of Address doar dacă ați migrat la un domeniu complet nou. Pentru migrarea HTTP-la-HTTPS pe același domeniu, redirecționările 301 gestionează transferul semnalului — nu este necesar instrumentul de schimbare a adresei.

Considerații pentru WordPress Multisite

Pe o rețea WordPress Multisite, trebuie să actualizați valorile siteurl și home din tabelele wp_siteurl și wp_blogs pentru fiecare subsite, nu doar pentru site-ul principal. WP-CLI gestionează acest lucru per site:

wp search-replace 'http://subdomain.yourdomain.com' 'https://subdomain.yourdomain.com' --url=subdomain.yourdomain.com --all-tables

Matrice de Decizie Practică: Ce Metodă SSL să Folosiți

Mediul dvs. de GăzduireMetodă SSL RecomandatăReînnoireEfort
Găzduire partajată cu cPanelAutoSSL sau Let's Encrypt prin cPanelAutomatăMinimă
[VPS Hosting](https://alexhost.com/vps/) cu Apache/NginxCertbot (Let's Encrypt)Automată prin timer systemdScăzut
VPS cu cPanel/WHMAutoSSL în WHMAutomatăMinimă
[Dedicated Server](https://alexhost.com/dedicated-servers/)Certbot sau certificat CA plătitManuală sau automatăMedie
Domeniu proxiat prin CloudflareSSL Cloudflare + certificat de origineAutomată (Cloudflare)Scăzut (dar verificați modul Full Strict)
Site E-commerce / de înaltă încredereCertificat OV sau EV plătitReînnoire manuală anualăRidicat

Concluzii Tehnice Cheie

  • Instalarea certificatului și configurarea WordPress sunt pași separați. Un certificat instalat la nivelul serverului nu face automat WordPress să genereze URL-uri HTTPS. Ambele trebuie configurate.
  • Conținutul mixt este cel mai frecvent eșec post-migrare. Rulați un search-replace în baza de date cu WP-CLI înainte de a activa orice plugin SSL pentru a prinde URL-urile HTTP hardcodate la sursă.
  • Reînnoirea automată Let's Encrypt trebuie verificată, nu presupusă. Rulați certbot renew --dry-run după configurarea inițială și monitorizați datele de expirare. O reînnoire eșuată vă defectează silențios site-ul după 90 de zile.
  • HSTS este o ușă cu sens unic. Nu setați un max-age lung sau activați preload până când fiecare subdomeniu are un certificat valid și sunteți angajat permanent la HTTPS.
  • SSL-ul gratuit Cloudflare nu este criptat end-to-end implicit. Setați modul SSL/TLS la Full (Strict) și instalați un certificat de origine pe serverul dvs. pentru a închide decalajul.
  • Pe găzduirea partajată, verificați că SSL-ul furnizorului dvs. de găzduire acoperă atât domeniul apex (yourdomain.com) cât și subdomeniul www. Un certificat emis doar pentru unul va produce o eroare de nepotrivire a numelui pentru celălalt.
  • Datele serializate din bazele de date WordPress nu pot fi actualizate în siguranță cu SQL brut REPLACE(). Folosiți întotdeauna WP-CLI sau un plugin conștient de serializare.

Pentru site-urile găzduite pe Găzduire Web Partajată, calea cea mai rapidă către SSL este activarea AutoSSL sau Let's Encrypt prin cPanel — întregul proces durează mai puțin de cinci minute și nu necesită acces la linia de comandă. Pentru implementări mai complexe care necesită configurare personalizată a cifrurilor, OCSP stapling sau certificate multi-domeniu, un VPS cu un panou de control configurabil vă oferă accesul necesar la nivel de server.

Întrebări Frecvente

Instalarea unui certificat SSL îmbunătățește direct clasamentul meu în Google?

Google a confirmat HTTPS ca semnal de clasament în 2014. Creșterea directă a clasamentului este modestă, dar beneficiile indirecte — rata de respingere redusă din cauza avertismentelor de securitate ale browserului, eligibilitatea pentru HTTP/2 și HTTP/3 și încrederea utilizatorilor — au un efect cumulativ măsurabil asupra performanței organice.

Care este diferența dintre SSL și TLS?

SSL (Secure Sockets Layer) este predecesorul depreciat al TLS (Transport Layer Security). Toate certificatele moderne folosesc TLS 1.2 sau 1.3. Termenul „certificat SSL” persistă ca prescurtare în industrie, dar niciun browser sau server nu a folosit SSL efectiv din 2015. Dacă serverul dvs. acceptă în continuare SSLv3 sau TLS 1.0, dezactivați-le imediat — sunt vulnerabile la atacurile POODLE și respectiv BEAST.

De ce site-ul meu afișează în continuare „Not Secure” după instalarea certificatului?

Cea mai frecventă cauză este o eroare de conținut mixt: cel puțin o resursă de pe pagină se încarcă prin HTTP. Deschideți instrumentele pentru dezvoltatori ale browserului, verificați consola pentru avertismente de conținut mixt și folosiți WP-CLI search-replace sau plugin-ul Really Simple SSL pentru a rescrie URL-urile problematice. O cauză secundară este că URL-ul Site-ului WordPress din Settings > General indică în continuare http://.

Cum reînnoiesc un certificat Let's Encrypt înainte să expire?

Certbot instalează un timer systemd sau un cron job care încearcă reînnoirea automată când certificatul este în termen de 30 de zile de la expirare. Pentru a forța o reînnoire imediată, rulați sudo certbot renew --force-renewal. Pentru a testa fără a face modificări, rulați sudo certbot renew --dry-run. Verificați jurnalul de reînnoire la /var/log/letsencrypt/letsencrypt.log dacă reînnoirea eșuează.

Pot instala SSL pe WordPress fără acces la server sau cPanel?

Da, prin Cloudflare. Adăugați domeniul dvs. la Cloudflare, îndreptați nameserver-ele dvs. către cele ale Cloudflare și activați setarea SSL/TLS. Segmentul vizitator-la-Cloudflare este criptat imediat. Cu toate acestea, setați modul la Full (Strict) și instalați un Certificat de Origine Cloudflare pe serverul dvs. pentru a cripta și segmentul Cloudflare-la-origine. Fără aceasta, conexiunea dintre Cloudflare și serverul dvs. rămâne necriptată, ceea ce reprezintă o vulnerabilitate de securitate semnificativă pentru orice site care gestionează date ale utilizatorilor.

15%

Economisește 15% la toate serviciile de găzduire

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul:

Skills
Începeți