Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Nginx] Przesiadka z Apache
Forum PHP.pl > Forum > Serwery WWW
ShutteR
Witajcie, mam pewnien problem nie dający mi spokoju. Otóż przeniosłem stroną internetową (CMS DLE) na konfigurowany właśnie VPS która do poprawnego działania wykorzystuje przepisywanie adresów RewriteRule z pliku .htaccess.
Jako że nginx nie obsługuje .htaccessa dlatego przepisywanie muszę zrobić w pliku konfiguracyjnym nginx-a. Dla testów zacząłem od najprostszej reguły Apacha:

  1. RewriteRule ^eska_20$ index.php?do=eska_20 [L]


którą przekonwertowałem na regułę (poprawną?) nginxa:

  1. location = /eska_20 { rewrite ^(.*)$ /index.php?do=eska_20 break; }


i wkleiłem do /etc/nginx/sites-enabled/domena.com do sekcji server { }. Restart nginxa, wejście w /eska_20 i zonk - pobiera mi się plik .php.
Nginx - t nic ciekawego nie zwraca

Co zrobiłem nie tak? Coś pominąłem?
Pyton_000
A masz włączone obsługę php w vhost ?
freemp3
Spróbuj tak:
Kod
location / {
index /index.php;
rewrite ^/eska_20$ /index.php?do=eska_20 last;
}
ShutteR
Cytat(Pyton_000 @ 9.02.2015, 14:01:10 ) *
A masz włączone obsługę php w vhost ?

Tak.

O to chodziło?
Kod
location / {
                try_files $uri $uri/ /index.php;
                rewrite ^eska_20$ /index.php?do=eska_20 last;
        }

Jest pewien postęp ponieważ strona się już nie pobiera ale nadal zamiast podstrony widoczna jest strona główna.
freemp3
Zgubiłeś / po znaku ^
Kod
rewrite ^/eska_20$ /index.php?do=eska_20 last;
ShutteR
Fakt smile.gif

Działa, dzięki wielkie!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.