zomo 3 Zgłoś post Napisano Luty 8, 2011 Witam, Mógłby mi powiedzieć ktoś jak bedzię wygladała regułka rewrite dla nginx? Plik .htaccess Options FollowSymLinks RewriteEngine On RewriteBase /p/ RewriteCond %{HTTP_HOST} !^www. [NC] RewriteCond %{HTTP_HOST} ![0-9]$ [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301] RewriteCond %{REQUEST_URI} ^\/$ RewriteCond %{QUERY_STRING} ^$ RewriteRule ^(.*)$ pl/ [L] RewriteRule ^(index.php)$ pl/$1 [L] RewriteCond %{REQUEST_URI} ^/images.+$ RewriteRule ^.+(images/.+)$ pl/$1 [L] RewriteRule ^(pl\/)([a-zA-Z0-9_-]+),{1}([0-9]+),{1}([0-9]+)$ $2,$3,$4 [R=301] RewriteRule ^(pl\/)([a-zA-Z0-9_-]+),{1}([0-9]+)$ $2,$3 [R=301] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+)([a-zA-Z0-9_-]+),{1}([0-9]+),{1}([0-9]+)$ pl/index.php?id=$3&idd=$4 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+)([a-zA-Z0-9_-]+),{1}([0-9]+)$ pl/index.php?id=$3 [L] Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość macer Zgłoś post Napisano Luty 14, 2011 wypróbuj to - http://www.anilcetin.com/convert-apache-htaccess-to-nginx/ dla mnie działa wklejasz w główny konfig nginxa, w sekcji konkretnego virtualhosta. Udostępnij ten post Link to postu Udostępnij na innych stronach
elroy 6 Zgłoś post Napisano Kwiecień 15, 2011 To ja również mam prośbę o pomoc (a siedzę już kilka dobrych godzin..) Przesiadka z apache na nginx poszła sprawnie, ale borykam się z jednym problemem dotyczącym rewrite Mam taki config (pomijając sprawy elementarne) Dwie lokacje w katalogu głównym siedzi sobie wordpress, a w katalogu forum, forum punbb root /home/romek/www/site_pl; index index.php index.html index.htm; location / # tu siedzi wordperss i działa { try_files $uri $uri/ /index.php; } location /forum # tutaj forum i przepisywanie adresów nihuhu { rewrite ^/f([0-9]+)(.*).html$ /viewforum.php?id=$1 last; rewrite ^/t([0-9]+)(.*).html$ /viewtopic.php?id=$1 last; rewrite ^/p([0-9]+)(.*).html$ /viewtopic.php?pid=$1 last; rewrite ^/(.*).rss$ /extern.php?action=$1&type=rss last; } oryginalny plik .htaccess <IfModule mod_rewrite.c> RewriteEngine on RewriteBase /forum RewriteRule ^f([0-9]+)(.*).html$ viewforum.php?id=$1 [L] RewriteRule ^t([0-9]+)(.*).html$ viewtopic.php?id=$1 [L] RewriteRule ^p([0-9]+)(.*).html$ viewtopic.php?pid=$1 [L] RewriteRule ^(.*).rss$ extern.php?action=$1&type=rss [L] Czy te regułki są ok ? Niestety rewrite na forum nie działa jak trzeba. Chyba tylko jeden rodzaj odnośników... Dziękuję za pomoc Tomek Udostępnij ten post Link to postu Udostępnij na innych stronach
elroy 6 Zgłoś post Napisano Kwiecień 15, 2011 Może zadam pytanie prościej root /home/www/site_pl/; index index.php index.html index.htm; location /forum { rewrite ^/f([0-9]+)(.*).html$ /viewforum.php?id=$1 last; rewrite ^/t([0-9]+)(.*).html$ /viewtopic.php?id=$1 last; rewrite ^/p([0-9]+)(.*).html$ /viewtopic.php?pid=$1 last; rewrite ^/(.*).rss$ /extern.php?action=$1&type=rss last; } Jest dobrze w stosunku do apachowego htaccess ? Korzystałem z tego narzędzia http://www.anilcetin...ccess-to-nginx/ <IfModule mod_rewrite.c> RewriteEngine on RewriteBase /forum RewriteRule ^f([0-9]+)(.*).html$ viewforum.php?id=$1 [L] RewriteRule ^t([0-9]+)(.*).html$ viewtopic.php?id=$1 [L] RewriteRule ^p([0-9]+)(.*).html$ viewtopic.php?pid=$1 [L] RewriteRule ^(.*).rss$ extern.php?action=$1&type=rss [L] Nie mogę sobie z tym poradzić i tylko to mnie trzyma przed migracją. HELP Udostępnij ten post Link to postu Udostępnij na innych stronach
dedikownia 1 Zgłoś post Napisano Kwiecień 15, 2011 (edytowany) location / { rewrite ^/forum/f([0-9]+)(.*)\.html$ /forum/viewforum.php?id=$1 last; rewrite ^/forum/t([0-9]+)(.*)\.html$ /forum/viewtopic.php?id=$1 last; rewrite ^/forum/p([0-9]+)(.*)\.html$ /forum/viewtopic.php?pid=$1 last; rewrite ^/forum/(.*)\.rss$ /forum/extern.php?action=$1&type=rss last; } Może tak ? Edytowano Kwiecień 15, 2011 przez Proflo (zobacz historię edycji) 1 Udostępnij ten post Link to postu Udostępnij na innych stronach
elroy 6 Zgłoś post Napisano Kwiecień 16, 2011 location / { rewrite ^/forum/f([0-9]+)(.*)\.html$ /forum/viewforum.php?id=$1 last; rewrite ^/forum/t([0-9]+)(.*)\.html$ /forum/viewtopic.php?id=$1 last; rewrite ^/forum/p([0-9]+)(.*)\.html$ /forum/viewtopic.php?pid=$1 last; rewrite ^/forum/(.*)\.rss$ /forum/extern.php?action=$1&type=rss last; } Może tak ? Nie odpowiedziałem, a może się komuś przyda. Tak, w tej formie wszystko działa. Musi to być najwyraźniej wszystko w sekcji "/" Udostępnij ten post Link to postu Udostępnij na innych stronach
elroy 6 Zgłoś post Napisano Sierpień 6, 2011 Mam pytanko, bo nie mogę sobie poradzić z odpaleniem jednego skryptu Oryginalny htaccess wygląda tak RewriteBase / RewriteRule !(\.(php|jpg|jpeg|png|gif|ico|css|ppt|pdf|js|swf|flv|htm|txt)$) index.php [NC,L] Czy wersja na nginx będzie wyglądała po prostu tak? rewrite /!(\.(php|jpg|jpeg|png|gif|ico|css|ppt|pdf|js|swf|flv|htm|txt)$) /index.php last; Wklejam to do konfiguracji danego vhosta, ładnie restartuję, ale dostaję 404. Dzięki za pomoc Udostępnij ten post Link to postu Udostępnij na innych stronach
adam.gekosale 40 Zgłoś post Napisano Sierpień 6, 2011 location ~ .php$ { root /home/services/httpd/$host/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; } Do tego rewrite: location / { root /home/services/httpd/$host/; index index.php index.html; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php last; break; } } .htaccess z gekosale więc próbuj z w/w regułkami. Udostępnij ten post Link to postu Udostępnij na innych stronach
elroy 6 Zgłoś post Napisano Sierpień 6, 2011 Dziękuję za pomoc tutaj, jak i na forum wsparcia GekoSale. Problem rozwiązany Pozdrawiam Tomek Udostępnij ten post Link to postu Udostępnij na innych stronach
hafcior 0 Zgłoś post Napisano Marzec 20, 2012 (edytowany) Witam. Moglbym rownież prosić o przepisanie kilku regulek pod nginx ? Ten encoder co tu widzialem wyzej w postach nei radzi sobie z tym.. RewriteEngine On Options +FollowSymLinks RewriteRule ^i/w([0-9]+)/(.*)$ images/img.php?width=$1&img=$2 [L] RewriteRule ^images/(.*)$ images/$1 [L] RewriteRule ^js/(.*)$ js/$1 [L] RewriteRule ^css/(.*?)$ css/$1 [L] RewriteRule !\.(php)$ index.php Order Allow,Deny Allow from all z gory dzieki Edytowano Marzec 20, 2012 przez hafcior (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Misiek08 285 Zgłoś post Napisano Marzec 22, 2012 (edytowany) Czemu sobie nie radzi. Wyciągnij z ifów te rewrity i masz. Nie patrzyłem czy są ok, ale pewnie będą. Edytowano Marzec 22, 2012 przez Misiek08 (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
zomo 3 Zgłoś post Napisano Kwiecień 20, 2012 podepne się do tematu, pomoze mi ktos przepisać regułki pod nginx z góry wielkie dzięki: #Options FollowSymLinks RewriteEngine on RewriteRule ^vardata/(.*).php$ [R=404,L] RewriteRule ^([a-zA-Z0-9_-]+).html$ index.php?op=$1 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3&qs=$4 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3&qs=$4&ne=$5 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3&qs=$4&ne=$5&nr=$6 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3&qs=$4&ne=$5&nr=$6&ha=$7 RewriteRule ^([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+),([a-zA-Z0-9_-]+).html$ index.php?op=$1&do=$2&id=$3&qs=$4&ne=$5&nr=$6&ha=$7&hs=$8 [L] Udostępnij ten post Link to postu Udostępnij na innych stronach