A WordPress-szabályoknak is vannak kivételeik

wordpress apache
Olvasási idő: 2 jegyzőkönyv

wordpress apacheA WordPress jelentős evolúciós előrelépést tett a blogolási platformon, közelebb helyezve egy teljes értékű tartalomkezelő rendszerhez, amelyhez a verziókövetés, az egyedi menük nagyobb támogatása, és - számomra a legérdekesebb funkció - több webhelyes támogatás a domain-hozzárendeléssel.

Ha nem vagy tartalomkezelő rendszer-drogos, akkor rendben van. A cikk mellett átugorhat. De techno-geek, kódfejes és apache-dabbler társaimnak szeretnék valami érdekeset és valami jót megosztani.

A több webhely egy olyan funkció, amely lehetővé teszi tetszőleges számú WordPress-webhely futtatását egyetlen WordPress-telepítéssel. Ha több webhelyet adminisztrál, akkor jó, mert telepíthet egy jóváhagyott témák és modulok csoportját, és aktiválhatja azokat az ügyfél webhelyein. Van néhány technikai akadály a domainek feltérképezésére, de a folyamat nem nehéz.

Az egyik problémás terület, amelyet azonosítottam, a téma testreszabása. Mivel a témák több webhely számára elérhetővé válhatnak, a témához való bármilyen testreszabás hatással lesz minden más webhelyre, amely ezt a témát használja a több webhely telepítésén. Ennek módja az, hogy egy témát lemásolok, mielőtt elkezdeném a testreszabást, és világosan meg kell neveznem annak a kliens webhelynek a témáját, amelyhez megtervezem.

Egy másik érdekes kérdés, hogy mi történik az Apache szerver .htaccess fájljában. A WordPress-nek blogonként kell átírnia az útvonalakat, és ezt egy átírási szabály és egy php fájl segítségével kell megtennie.

A WordPress a következő átírási szabályt használja:

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

Lényegében bármit, ami a mysite.com/files/directory alkönyvtárában található, átírják a mysite.com/files/wp-includes/myblogfolderpath… helyre, és ez lesz itt érdekes. Mi történik, ha valóban szüksége van egy fájlra a szerveren, amely a mysite.com/files/myfolder/myimage.jpg fájl? 404-es hibát kap, ez történik. Az Apache átírási szabály beindítja és megváltoztatja az elérési utat.

Bizony, soha nem találkozhat ezzel a problémával, de én megtettem. Volt olyan webhelyem, amelynek javascript modult kellett használnia egy másik webhelyről, és grafikákat kellett találnia a mysite.com/files/Images/myfile címen. Mivel a gazdagépen nem volt mód a fájl megváltoztatására, meg kellett találnom, hogyan lehet ezt a szerveremen megtenni. Az egyszerű megoldás egy olyan átírási feltétel létrehozása, amely kivételt tesz bizonyos fájlok esetében.

Itt a megoldás:

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

Az átírási feltételeket az átírás szabály elé kell tenni, különben ez a trükk nem fog működni. Könnyűnek kell lennie ennek a feltételnek a saját céljaira történő módosítására, ha hasonló problémába ütközik. A megoldás remekül működött számomra, lehetővé téve számomra, hogy az egyedi grafikákat helyettesítsem a kevésbé kívánatos alt szöveg helyett, ami nem illett a tervezésembe. Remélhetőleg ez neked is sikerülni fog.

Mit gondolsz?

Ez az oldal Akismet-et használ a levélszemét csökkentése érdekében. Ismerje meg, hogyan dolgozik a megjegyzésed.