wordpress i nginx w jednym miejscu stali

Przenoszę serwisy z jednego serwera na drugi i na tym drugim z założenia ma nie być apache’a. na pierwszy ogień poszedł najmniejszy z wordpressów, taki którego można by przenieść nawet ręcznie. Kilka wpisów na krzyż, kilka wtyczek i tworzony wciąż szablon wyglądu.

Na pierwszy ogień przeszła przeprowadzka bazy, więc dump z bazy mysql (systemowa baza serwera) w celu wyciągnięcia danych z tabel db oraz user oraz przerzucenie dwóch rekordów do nowej bazy. Potem CREATE DATABASE nazwa; i import dumpa.

Sama konfiguracja wirtuala to moment, choć sposób wykorzystania php w trybie cgi wymaga własnego wpisu, poszła bez kłopotu.

Do typowej konfiguracji musiałem dodać tylko wpisy dotyczące kodowania i zmienić index katalogu na index.php.

Ponieważ odnośniki są ustawione jako /%postname%/ wymagane jest użycie reguł rewrite’ów, które dla apache’a są tworzone z automatu.

Dla nginx’a wygląda to następująco:

location / {
    root   /ścieżka_do_document_roota;
    if (-e $request_filename) {
        break;
    }
    rewrite ^(.+)$ /index.php?q=$1 last;
}

Liczba komentarzy: 4

palmiak - Gravatar

6 stycznia 2010 o godzinie 1:33 palmiak skomentował:

Ciekawie jak to będzie działać. Ja prowadziłem drobne eksperymenty Lighttp ” no działało to, ale na eksperymentach się skończyło. Nic większego produkcyjnie nie testowałem. Będę zaglądał czekając na rozwój tej migracji.

Marcin - Gravatar

8 stycznia 2010 o godzinie 10:07 Marcin skomentował:

Na razie działa, za chwilę jadą tam następne chrooty i następne wordpressy, więc zobaczymy,

SpeX - Gravatar

9 stycznia 2010 o godzinie 22:56 SpeX skomentował:

A co to ma dać?

Marcin - Gravatar

11 stycznia 2010 o godzinie 12:45 Marcin skomentował:

@SpeX: no działanie wordpress’a na nginx’ie.

Dodaj komentarz

Należy wpełnić pola oznaczone znakiem gwiazdki "*". Proszę zapoznać się z zasadami komentowania.

Więcej w mysql, nginx, rewrite
IP.Board i uszkodzony index

Jest sobie forum postawione na IP.Board, który jest prawie idealny. Prawie, ponieważ używa mysql'a zamiast postgresql'q. Gdyby używał tego ostatniego...

Zamknij

Dodatek zrealizowany za pomocą wtyczki upPrev.