Как настроить ЧПУ на Nginx?
Как настроить ЧПУ на Nginx?
Всем привет. Вопрос к коллегам, хорошо разбирающимся в настройках VPS.
У меня VPS на Digital Ocean.
ОС - Debian 8.3 x32
Установил панель Vestа по таким параметрам - http://prntscr.com/aod3zo
При такой конфигурации не работают ЧПУ на сайтах. Выяснилось, что Nginx не читает htaccess, соответственно mod_rewrite не работает. При открытии любого url на сайте возникает ошибка 404 - http://prntscr.com/aod5zd
Нагуглил информацию, что нужно в nginx.conf прописать дополнительный код.
Пример -
https://www.youtube.com/watch?v=NNYmScvMGEU
Проблема в том, что у меня отличное содержание файла nginx.conf, поэтому точно не знаю, что куда прописывать.
Кто сталкивался с такой проблемой? Подскажите как решить.
У меня VPS на Digital Ocean.
ОС - Debian 8.3 x32
Установил панель Vestа по таким параметрам - http://prntscr.com/aod3zo
При такой конфигурации не работают ЧПУ на сайтах. Выяснилось, что Nginx не читает htaccess, соответственно mod_rewrite не работает. При открытии любого url на сайте возникает ошибка 404 - http://prntscr.com/aod5zd
Нагуглил информацию, что нужно в nginx.conf прописать дополнительный код.
Пример -
https://www.youtube.com/watch?v=NNYmScvMGEU
Проблема в том, что у меня отличное содержание файла nginx.conf, поэтому точно не знаю, что куда прописывать.
Кто сталкивался с такой проблемой? Подскажите как решить.
Re: Как настроить ЧПУ на Nginx?
Забегая вперед спрошу, но зачем? Новый опыт, приключения?David1925 wrote: Установил панель Vestа по таким параметрам - http://prntscr.com/aod3zo
Не совсем такой порядок рассуждений.David1925 wrote:При такой конфигурации не работают ЧПУ на сайтах. Выяснилось, что Nginx не читает htaccess, соответственно mod_rewrite не работает.
В установке нет вебсервера apache с модулем mod_rewrite, потому не обрабатывается htaccess и потому кривое ЧПУ, которое требует htaccess не работает. (замечу, что правильное ЧПУ не просит себе htaccess, а реализовывает роуты самостоятельно).
Путей решений традиционно несколько:David1925 wrote:Нагуглил информацию, что нужно в nginx.conf прописать дополнительный код.
Проблема в том, что у меня отличное содержание файла nginx.conf, поэтому точно не знаю, что куда прописывать.
- поправить шаблоны или создать новый (при редактировании домена у вас есть несколько из коробки)... можно попробовать сделать под свою CMS, они лежат в /usr/local/vesta/data/templates/web/
- способ проще - править конфиг nginx, но править нужно не центральный конфиг из /etc/nginx/nginx.conf, а пользовательский, который лежит /home/admin/conf/web/
Это не баг, это фича. (c)David1925 wrote:Кто сталкивался с такой проблемой?
Re: Как настроить ЧПУ на Nginx?
Загугли, есть сервисы переводящие содержимое htaccess в содержимое для конфига nginx
Re: Как настроить ЧПУ на Nginx?
нужно добавить возможность это делать из панели
Re: Как настроить ЧПУ на Nginx?
Посмотрите в топике http://forum.vestacp.com/viewtopic.php? ... 467#p42467David1925 wrote: Кто сталкивался с такой проблемой? Подскажите как решить.
Я указал шаблон пользовательских настроек nginx которые прекрасно отрабатывают ЧПУ. Просто подставьте свои значения IP и имени сайта.
Re: Как настроить ЧПУ на Nginx?
Только они работают не всегда корректно.random wrote:Загугли, есть сервисы переводящие содержимое htaccess в содержимое для конфига nginx
Re: Как настроить ЧПУ на Nginx?
Стоит добавить идею:bbk wrote:нужно добавить возможность это делать из панели
https://bugs.vestacp.com
Re: Как настроить ЧПУ на Nginx?
Да, я согласен. Но перевести часть отвечающую за ЧПУ - более менее могут. Да и посмотрев пример можно поправить самостоятельно.skurudo wrote:Только они работают не всегда корректно.random wrote:Загугли, есть сервисы переводящие содержимое htaccess в содержимое для конфига nginx
Но лично я ими не пользовался, просто подумал что это поможет ТС.
Re: Как настроить ЧПУ на Nginx?
Сомневаюсь, что можно так быстро разобраться в регулярках :)random wrote:Да и посмотрев пример можно поправить самостоятельно.
Вообще приложение должно уметь разруливать, иначе мрак и падение.
Re: Как настроить ЧПУ на Nginx?
Это уже от человека зависит. Если не разбирается в регулярках то стоит задуматься нужен ли ему nginx.skurudo wrote:Сомневаюсь, что можно так быстро разобраться в регулярках :)random wrote:Да и посмотрев пример можно поправить самостоятельно.
Вообще приложение должно уметь разруливать, иначе мрак и падение.