форум vBSupport.ru > vBulletin > vBulletin 4.0.x-4.1.х > Вопросы по vBulletin 4.0.x-4.1.х
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
adev
Простоузер
Default ЧПУ и nginx
0

Как все-таки разумно настроить?
Ставлю в конфиг nginx такой код (путь на форумы):
Code:
rewrite forums/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) forumdisplay.php?f=$1&page=$2&$query_string;
В .htaccess как понимаю, уже ставить ничего не надо...
Может что-то надо в nginx добавить?
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
Nike
Продвинутый
Default
0

Вам нужно конкретно ЧПУ с mod_rewrite? В админке есть вариант и без него.
И у Вас на сервере ТОЛЬКО nginx? Так очень редко делают. Обычно динамику оставляют на апатч, а на раздачу статики вешают nginx. В таком случае все ровно надо прописывать все в .htaccess.
С только nginx'ом опыта к сожалению не имел, так, что помочь не смогу....
 
 
adev
Простоузер
Default
0

Почему же, у меня nginx - apache, стандартная связка. Хм, а если переадресацию ведет nginx, то что писать в htaccess...
 
 
Zdraff
Знаток
 
Zdraff's Avatar
Default
0

adev, у меня апач+нгинкс - просто кладешь куда надо какой надо htaccess и все хорошо.
 
 
Nike
Продвинутый
Default
0

Есть nginx, работает как фронтэнд, то правила переписывать не надо. Вы замучаетесь с перепиской правил для каждого движка. У меня это реализовано например так:
PHP Code:
server {
        
listen Адрес_сервера:порт;
        
server_name Домены сайта;
        
location / {
    
proxy_pass Адрес_сервера:порт/;
    
proxy_redirect Адрес_сервера:порт/ /;
            
proxy_set_header Host $host;
            
proxy_set_header X-Real-IP $remote_addr;
            
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        
location ~* ^.+\.(jpg|jpeg|gif|png|js|css)$ {
    
root полный путь до папка с сайтом;
    
access_log Полный путь до лого сайта;
        } 
При этом я не создаю все это сам для каждого нового сайта, а это делается автоматически панелью ISPmanager.

апд, это надо добавить в конфиг nginx.
 
 
adev
Простоузер
Default
0

Да я бы и не хотел правила переписывать конфиг nginx (да, они того вида, что вы указали). Но обычный .htaccess дает 500 ошибку, по какой причине не пойму... mod_rewrite включен. На форуме комовском встретил вариант с переписью nginx, вот и попробовал, правда и он не работает)))
 
 
Nike
Продвинутый
Default
0

Quote:
Originally Posted by adev View Post
Да я бы и не хотел правила переписывать конфиг nginx (да, они того вида, что вы указали). Но обычный .htaccess дает 500 ошибку, по какой причине не пойму... mod_rewrite включен. На форуме комовском встретил вариант с переписью nginx, вот и попробовал, правда и он не работает)))
Смотрите в логах, там по идее должны быть написана причина ошибки.
На других скриптах все ок?
 
 
a_n_d_y
Знаток
 
a_n_d_y's Avatar
Default
0

У меня форум стоит как раз на связке апач+nginx при чем сам добавлял nginx в качестве фронтенда. Никаких новых правил под него писать не надо, это остается у апача. Просто прописать настройки хоста у nginx чтобы он апачу передавал и все... Апачу отдал порт 8080, а nginx оставил на 80
Вот моя настройка. nginx:
Code:
server {
 listen       site.ru:80;
 server_name site.ru www.site.ru;
  location / {
 proxy_pass         http://127.0.0.1:8080/;
 proxy_redirect     off;
 log_not_found      off;
 proxy_set_header   X-Real-IP $remote_addr;
 proxy_set_header   Host $http_host;
 proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
 }
}
Далее в конфиге апача прописал порт
Code:
Listen 127.0.0.1:8080
А в настройке виртуального хоста
Code:
<VirtualHost 127.0.0.1:8080>
	ServerName   site.ru
	ServerAlias  www.site.ru
        ...
</VirtualHost>
И все работает отлично...

a_n_d_y добавил 20.01.2010 в 15:02
Кстати можно на комп поставить nginx и апач и поковыряться ;)

Last edited by a_n_d_y : 01-20-2010 at 04:02 PM. Reason: Добавлено сообщение
 
 
adev
Простоузер
Default
0

a_n_d_y, спасибо за помощь) Но nginx с апачей у меня спокойно работает и проблем с ним не возникает (настроено все так как вы и пишите). Загвоздка видимо с mod_rewrite, не могу сделать красивые урлы... С другими машинками (drupal, mt) вопрос решается без вмешательства в nginx, но тут выдается 500-я ошибка... Вот я и подумал, что может своя специфика есть с рерайтами у vBulletin) Буду копать разные версии .htaccess

adev добавил 20.01.2010 в 17:20
Нда, неверно я поставил вопрос. Отключил nginx ради частоты эксперимента — не помогло) штудирую дальше булку.ком, может найду способ правильно сделать htaccess

adev добавил 20.01.2010 в 17:47
Нашел решение!
Собака зарыта в версии apache. У меня стоит 1.3, которая не читает регулярные выражения. Цитата отсюда
Quote:
This error occurs due to that apache 1.3 uses POSIX ERE and apache 2.x uses REGEX. The errors is specifically in the non-capturing clusters "(?: exp)" which is not supported by POSIX ERE or apache 1.3
Заменил обычное
Code:
RewriteRule ^(?:(.*?)(?:/|$))(.*|$)$ $1.php?r=$2 [QSA]
на такой вот упрощенный вариант)))
Code:
RewriteRule ^$ $1.php?r=$2 [QSA]
Насколько это рабочая версия, как думаете (пока вроде бы все работает)?

Last edited by adev : 01-20-2010 at 06:47 PM. Reason: Добавлено сообщение
 
 
XTrAnE
Продвинутый
Default
0

Блин дайте код хтацесса) чот неполучается самому сделать)

XTrAnE добавил 21.01.2010 в 19:25
для apache

Last edited by XTrAnE : 01-21-2010 at 08:25 PM. Reason: Добавлено сообщение
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 02:05 PM.


Powered by vBulletin® Version Anime Edition
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...