Всем привет. Наверняка многие люди переползают потихоньку на nginx с апача. В большинстве случаев это связано с недостаточными ресурсами сервера для обработки большого количества запросов.
Это как-бы небольшая преамбула. Я не буду описывать все + и - переезда с одного веб сервера на другой.
Сегодня я познакомлю с маленьким правилом для конфига нгинкса, чтобы корректно работали редиректы. Естессно у вас должен быть установлен модуль http_rewrite_module.
Итак, в в location добавляем следующее:
location / { root /путь/к вашему/сайту; index index.php index.html index.htm; try_files $uri $uri/ /index.php?q=$uri&$args; }
Краткое описание директивы:
Директива проверяет существование файлов в заданном порядке и использует для обработки запроса первый найденный файл, причём обработка делается в контексте этого же location'а. С помощью слэша в конце имени можно задать проверку существования каталога, например, так — "$uri/". В случае, если ни один файл не найден, то делается внутренний редирект
на последний параметр.