Când folosești HTTPS, WordPress nu utilizează HTTPS pentru CSS și JavaScript, iar adminul nu funcționează. Cum pot rezolva această problemă?

3 feb. 2019, 22:04:34
Vizualizări: 14.4K
Voturi: 2

Recent am construit un server LAMP și am instalat WordPress pe el. L-am conectat la internet prin tunel invers SSH folosind serveo.net.

Am decis să adaug SSL și restul site-ului pare să funcționeze bine, dar WordPress continuă să aibă probleme când încerc să folosesc SSL.

Am mers în setările generale și am schimbat URL-urile în HTTP în loc de HTTPS, dar când încarc paginile, în codul sursă URL-urile pentru CSS și JavaScript folosesc HTTP în loc de HTTPS, așa că nu se încarcă.

Apoi partea de wp-admin nici măcar nu se încarcă. Cum pot rezolva această problemă?

Am căutat multe articole despre persoane care au probleme similare, dar niciunul nu a ajutat.

2
Comentarii

Sunt foarte nou în dezvoltarea WordPress. Am vrut să adaug un certificat SSL și pentru asta am mers în setările Generale, am adăugat https și am eliminat http, apoi am salvat. După aceea, nici măcar nu mă pot conecta în adminul WordPress. Vă rog să mă ajutați cât mai rapid posibil.

ashutosh batta ashutosh batta
1 sept. 2020 04:43:42

@ashutoshbatta Dacă ai o întrebare nouă, te rugăm să o adresezi apăsând butonul Pune o Întrebare. Include un link către această întrebare dacă ajută la oferirea de context. - Din Recenzie

bueltge bueltge
1 sept. 2020 11:13:09
Toate răspunsurile la întrebare 4
7

Verifică două lucruri:

  • în tabelul wp-options, URL-urile site-ului (în două locuri) trebuie să fie URL-ul complet, ca în https://www.example.com.
  • verifică fișierul htaccess al site-ului pentru rescrierea corectă de la http la https.

Pentru o regulă htaccess, aceasta funcționează în majoritatea cazurilor:

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

Apoi verifică fișierele temei pentru a te asigura că orice referință la CSS/JS include protocolul https, nu http. Majoritatea temelor bine scrise vor folosi referințe relative în loc de absolute pentru fișierele incluse.

Este posibil și ca un plugin să specifice http în loc de https.

Folosește fila Network din Instrumentele pentru Dezvoltatori (de obicei F12 în browser) pentru a verifica fiecare cerere și a vedea de unde vine. Dacă cererea este către un folder de plugin, verifică codul din acel loc.

3 feb. 2019 23:54:14
Comentarii

Folosesc tema implicită. twentynieteen,Folosesc tema implicită. twentynieteen. Intrările din baza de date sunt corecte, dar secțiunea head conține elemente precum <link rel='stylesheet' id='wp-block-library-css' href='http://jtjumper.serveo.net/wp/wp-includes/css/dist/block-library/style.min.css?ver=5.0.3' type='text/css' media='all' /> <link rel='stylesheet' id='wp-block-library-theme-css' href='http://jtjumper.serveo.net/wp/wp-includes/css/dist/block-library/theme.min.css?ver=5.0.3' type='text/css' media='all' />

John Tippin John Tippin
4 feb. 2019 01:29:50

Dacă mă uit la codul sursă al paginii pe site-ul meu de test (găzduit) cu tema 2019, href-ul pentru acele declarații include protocolul https:. Și am htaccess-ul afișat în răspunsul meu. Și tabelul wp-options conține https://www.example.com , nu doar www.example.com . Poate al tău nu este configurat astfel?

Rick Hellewell Rick Hellewell
4 feb. 2019 01:39:24

Nu este suficient spațiu în comentarii pentru sursă, dar acesta este linkul paginii https://jtjumper.serveo.net/wp/ tabelul meu wp-options conține ambele, ambele fiind https

John Tippin John Tippin
4 feb. 2019 02:06:45

Aveți vreun plugin de caching? Fișierul dvs. htaccess rescrie http în https?

Rick Hellewell Rick Hellewell
4 feb. 2019 03:03:13

singurele plugin-uri pe care le am sunt akismet, loginizer, realy simple ssl și wordfence

John Tippin John Tippin
4 feb. 2019 03:22:34

Dezactivați toate plugin-urile (în special really simple ssl). Apoi setați fișierul htaccess așa cum este arătat. Apoi rulați un plugin de căutare/înlocuire (eu prefer "Better Search and Replace") și căutați http://www.domeniuldvs.com și înlocuiți-l cu https://www.domeniuldvs.com .

Rick Hellewell Rick Hellewell
4 feb. 2019 03:51:08

Șirul de căutare-înlocuire menționat în comentariul de mai sus ar trebui să fie: căutați http://yourdomain.com și înlocuiți-l cu https://yourdomain.com - din cauza formatării, nu este afișat corect în comentariu.

SherylHohman SherylHohman
2 mar. 2020 01:09:59
Arată celelalte 2 comentarii
0

Acest răspuns rezolvă majoritatea problemelor și sper că l-ai parcurs deja.

Motivul pentru care HTTPS (SSL) nu funcționa pe WordPress-ul meu, chiar și după modificările:

  1. Fișierul Virtual Host, adică <web_directory>.conf din /ect/apache2/sites-available
  2. Fișierul wp-config din /var/www/<web_directory>/
  3. [Pentru utilizatorii AWS EC2] Adăugarea unui Load Balancer cu un certificat SSL pentru conexiuni HTTPS

După ce faci toate acestea, dacă poți vizualiza site-ul fără CSS și JavaScript funcțional, atunci:

Ultimul pas

  1. În Panoul de control WordPress, mergi la Settings>General

    • Sub WordPress Address (URL), adaugă https://<yourdomain>.com
    • Sub Site Address (URL), adaugă https://<yourdomain>.com

Am descoperit că, atunci când doar Site Address (URL) este activat cu URL-ul site-ului, temele WordPress redirecționează automat către fișierele CSS cu HTTPS, adică https://<WordPressAddress>/css/index.css.

Doar domeniul tău are acces SSL, deci adăugarea numelui domeniului la WordPress Address (URL) a rezolvat problemele pentru mine.

21 aug. 2019 09:12:24
1

Adăugați acest cod în fișierul wp-config.php din folderul principal wordpress.
De asemenea, în Setări Generale din Panoul de Administrare, schimbați http în https pentru siteurl și home.

define('FORCE_SSL_ADMIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
   $_SERVER['HTTPS']='on';
21 aug. 2019 09:43:15
Comentarii

De ce? Ce face?

Johan Johan
18 sept. 2021 01:57:58
0

Am avut aceeași problemă când am găzduit site-ul meu pe serviciul Azure webapp pentru Linux.

Încearcă acest plugin. Ai grijă când este activ, funcționează. https://wordpress.org/plugins/jsm-force-ssl/

Acest plugin utilizează filtre native WordPress, în loc de bufferul de ieșire PHP, pentru fiabilitate maximă, performanță și compatibilitate cu caching-ul (acest plugin nu afectează performanța caching-ului), împreună cu redirecționări permanente 301 pentru cel mai bun SEO (redirecționările 301 sunt considerate cele mai bune pentru SEO când treci de la HTTP la HTTPS).

Respectă variabilele proxy / load-balancing pentru medii de găzduire mari:

HTTP_X_FORWARDED_PROTO HTTP_X_FORWARDED_SSL Cerințe:

Serverul tău web trebuie să fie configurat cu un certificat SSL și să poată gestiona cereri HTTPS.

Pur și simplu activează plugin-ul și ai terminat:

Nu există setări de plugin de ajustat și nici modificări aduse configurației WordPress — pur și simplu activează sau dezactivează plugin-ul pentru a activa / dezactiva filtrele și redirecționările dinamice.

7 mai 2020 17:51:33