Переписать регулярное выражение с .htaccess для nginx

W
На сайте с 12.11.2009
Offline
72
1162

Здравствуйте, очень надеюсь на вашу помощь.

Переношу один проект с хостинга на VDS. Сейчас полностью отказался от апача и перешел на nginx. Пришлось все регулярки от mod_rewrite'a переписать для nginx. Почти все их исправить удалось без проблем, но вот с одной справиться не могу. У меня на сайте была регулярка для форума - Все страницы которые начинаются с /forum адресовывать к реальной папке forum. (Просто далее есть значение по дефолту, т.е. если адрес страницы не подошел ни под одну из регулярок). Так вот в апаче у меня была такая регулярка:

RewriteCond %{SCRIPT_URL} ^(/?)forum$ [NC] 

RewriteRule ^forum/(.*)$ %{SCRIPT_URL}$1 [R]

А для nginx не могу придумать замену :( Получилось только через location сделать правильный вывод если мы набираем /forum/index.php, а если просто /forum то мой вариант не спасает и на форум не перемещает. Делал я вот так:

    location  /forum { 

root /var/www/forum/;
}
R
На сайте с 14.02.2010
Offline
77
#1

try_files смотрите, не нужны вам тут реврайты

RAS
На сайте с 27.11.2005
Offline
126
RAS
#2

вы можете обратиться к нам, мы сделаем вам нормальное портирование, стоимость будет не очень большая.

Администрируем сервера, впс, вдс. Ускоряем загрузку сайтов - DLE, Word Press, Joomla, Modx... Настраиваем безопасность. Ручная чистка rootkit/malware/вирусов. (/ru/forum/867860) Разработка - shell/bash/sh/python/perl.
M
На сайте с 19.09.2007
Offline
112
#3
wawilon:
Делал я вот так:

   

location /forum {
-- root /var/www/forum/;
}

++ root /var/www ;

должно помочь

и повыше поставьте в конфиге.

в последних версиях nginx стал просматривать правила после попадпания в локейшен на добавочные "а вдруг есть еще совпадения локейшенов и прочего" , так что если "самый свежий" то смотрите как минимум по еррорлогу что вышло.

iamsens
На сайте с 26.08.2009
Offline
115
#4
RAS:
вы можете обратиться к нам, мы сделаем вам нормальное портирование, стоимость будет не очень большая.

и сколько Вы берете за 2 строки? ))

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий