CSS deteriorat după schimbarea URL-ului site-ului
Am un blog WordPress auto-găzduit pe serverul meu de acasă. Anterior l-am accesat direct prin adresa IP originală obținută prin DHCP, dar acum am configurat o adresă IP statică pentru acesta. Problema este că tot CSS-ul este deteriorat.
Am actualizat fișierul wp-config.php
adăugând următoarele două linii:
define('WP_HOME','http://192.168.0.100/myblog/');
define('WP_SITEURL','http://192.168.0.100/myblog/');
și am repornit apache, dar CSS-ul este în continuare deteriorat. Există vreun alt fișier de configurare pe care ar trebui să-l actualizez?
Dacă aveți acces la baza de date MySQL, puteți actualiza tabela wp_options
.
Înainte de modificare...
$ mysql -u <db_user> --password=<db_pwd> -D <db_name> <<<"select * from wp_options where option_name in ('siteurl', 'home');"
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
| option_id | option_name | option_value | autoload |
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
| 1 | siteurl | http://172.17.0.2/wordpress | yes |
| 2 | home | http://172.17.0.2/wordpress | yes |
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
Apoi am schimbat adresa IP în 172.17.0.4 cu următoarea comandă...
$ mysql mysql -u <db_user> --password=<db_pwd> -D <db_name> <<<"update wp_options set option_value='http://172.17.0.4/wordpress' where option_name in ('siteurl', 'home');"
Astfel, tabela devine...
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
| option_id | option_name | option_value | autoload |
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
| 1 | siteurl | http://172.17.0.4/wordpress | yes |
| 2 | home | http://172.17.0.4/wordpress | yes |
+-----------+-----------------+---------------------------------------------------------------------------------------------------+----------+
În unele scenarii, poate fi util să actualizați automat această configurație.

WordPress Codex 'Schimbarea URL-ului site-ului' menționează următoarele -
Notă: Ambele setări trebuie să includă partea de http:// și nu trebuie să aibă o bară oblică "/" la sfârșit.
Am observat în întrebarea ta că ambele constante WP_HOME
și WP_SITEURL
includ bara oblică la sfârșit. Aceasta înseamnă că URL-ul către fișierul tău de stil va fi în acest format -
http://192.168.0.100/myblog//wp-content/themes/my-theme/style.css'
Pe scurt, elimină bara oblică de la sfârșit din ambele declarații și ar trebui să rezolve problema.
De asemenea, menționează că Codex-ul menționat mai sus afirmă următoarele în legătură cu soluția pe care ai ales-o.
Aceasta nu este neapărat cea mai bună soluție, ci doar o codificare hard a valorilor în site. Nu vei mai putea să le editezi pe pagina de setări Generale când folosești această metodă.
Sugerez să utilizezi una dintre celelalte metode mai permanente descrise pentru a-ți atinge scopul.

Dublele slash-uri, deși tehnic incorecte, încă tind să funcționeze - am testat în cinci browsere diferite. Mă îndoiesc că asta e problema.

@s_ha_dum - Depinde dacă URL-ul a fost rescris sau nu. Dacă a fost, dublele slash-uri pot funcționa în continuare (deși nu sunt ideale). Dacă nu, practic cauți o listare de director, așa că dublele slash-uri nu vor funcționa.

URL-urile fișierelor de stil nu sunt rescrise, cel puțin nu de către Core, și exact asta am testat - am trimis o cerere directă către URL-ul fișierului de stil. Dar nu am găsit nicio combinație de slash-uri care să întrerupă cererile pe serverul meu pentru nicio pagină, cu sau fără permalink-uri (adică rescrierea URL-urilor). Dacă știi vreo circumstanță specifică reproducibilă, te rog să elaborezi.

@s_ha_dum - Înțeleg că URL-ul fișierului de stiluri nu ar fi stricat, de aceea am menționat referitor la URL-uri nereescrise. Voi face niște teste acum, deoarece sunt sigur că am întâlnit probleme cu slash-urile duble în trecut...

@s_ha_dum - Ei bine, nu reușesc să fac ca slash-urile duble să strice site-ul meu de test, așa că presupun că trebuie să fi imaginat asta... Totuși, răspunsul meu este în continuare corect din punct de vedere tehnic ;-)

Migrarea site-ului tău WordPress într-o altă locație ar trebui să fie un proces simplu: trebuie doar să exportezi baza de date, să o imporți pe noul gazdă, să muți fișierele acolo, să configurezi totul și să faci noul site live. Totuși, există câțiva pași care, dacă nu sunt executați corect, pot provoca diverse probleme care cauzează dificultăți și duc la transferuri nereușite ale site-ului.
