I pravila za WordPress imaju izuzetke

wordpress apache
Vrijeme čitanja: 2 zapisnik

wordpress apacheWordPress je napravio veliki evolucijski korak naprijed u blogovskoj platformi, približivši ga punopravnom sistemu upravljanja sadržajem sa praćenjem revizija, većom podrškom za prilagođene menije i - najzanimljivijom funkcijom za mene - podrškom za više web lokacija s mapiranjem domena.

Ako niste narkoman sistema za upravljanje sadržajem, u redu je. Možete preskočiti prošlost ovog članka. Ali za svoje kolege tehno-geekove, head-ove i apache-dabblere, želim podijeliti nešto zanimljivo i nešto cool.

Više web lokacija je značajka koja vam omogućuje pokretanje bilo kojeg broja WordPress web lokacija s jednom WordPress instalacijom. Ako administrirate više web lokacija, lijepo je jer možete instalirati odobrenu grupu tema i dodataka i aktivirati ih za klijentske web lokacije. Postoji nekoliko tehničkih prepreka za mapiranje vaših domena, ali postupak nije težak.

Jedno od problematičnih područja koje sam prepoznao je prilagođavanje teme. Budući da teme mogu biti dostupne na više web lokacija, svako prilagođavanje teme učinit će i na svim drugim web lokacijama koje koriste tu temu pri instalaciji više web lokacija. Moj put oko toga je dupliciranje teme prije nego što započnem prilagođavanje i jasno imenovanje teme za klijentsku stranicu za koju je stiliziram.

Još jedno zanimljivo pitanje je šta se događa u .htaccess datoteci na vašem Apache serveru. WordPress mora prepisivati ​​staze na blogu po blogu, a to čini pravilom prepisivanja i php datotekom.

WordPress koristi sljedeće pravilo prepisivanja:

RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-includes / ms-files.php? File = $ 2 [L]

U osnovi, sve što se nalazi u poddirektoriju mysite.com/files/directory prepisuje se na mysite.com/files/wp-includes/myblogfolderpath… i tu postaje zanimljivo. Šta se događa ako na vašem serveru zapravo trebate imati datoteku mysite.com/files/myfolder/myimage.jpg? Ako dobijete grešku 404, to se i događa. Uključuje se pravilo za prepisivanje Apachea i mijenja put.

Doduše, možda nikada nećete naići na ovaj problem, ali jesam. Imao sam web lokaciju koja je trebala koristiti javascript widget s druge web stranice i trebala je pronaći grafiku na mysite.com/files/Images/myfile. Budući da nije bilo načina za promjenu datoteke na web lokaciji domaćina, trebao sam pronaći način kako to učiniti na svom serveru. Jednostavno rješenje je stvoriti uvjet prepisivanja koji čini izuzetak za određene datoteke.

Evo rešenja:

RewriteCond% {REQUEST_URI}! /? Files / Image / file1.jpg $
RewriteCond% {REQUEST_URI}! /? Files / Image / file2.jpg $
RewriteRule ^ ([_ 0-9a-zA-Z -] + /)? Files /(.+) wp-includes / ms-files.php? File = $ 2 [L]

Uvjeti prepisivanja moraju se postaviti prije pravila prepisivanja, inače ovaj trik neće uspjeti. Trebalo bi biti lako izmijeniti ovo stanje za svoje potrebe, ako naiđete na sličan problem. Rješenje mi je sjajno djelovalo, dopuštajući mi da zamijenim prilagođenu grafiku, a ne manje poželjan alt tekst koji nije odgovarao mom dizajnu. Nadam se da će i vama to uspjeti.

Šta ti misliš?

Ova stranica koristi Akismet kako bi smanjila neželjenu poštu. Saznajte kako se podaci vašeg komentara obrađuju.