Избавляемся от index.php при использовании nginx

Обсуждение документации. Переводы Cookbook и авторские рецепты.

Albert
Сообщения: 3
Зарегистрирован: 2009.11.05, 09:44

Re: Избавляемся от index.php при использовании nginx

Сообщение Albert » 2009.12.20, 14:06

я так и не понял куда ставить этот код. Ничего не работает. Как было так и осталось :(
То ли лыжы не едут, то ли я нуп

Albert
Сообщения: 3
Зарегистрирован: 2009.11.05, 09:44

Re: Избавляемся от index.php при использовании nginx

Сообщение Albert » 2009.12.20, 17:22

сорри, все впорядке с лыжами :D

ted
Сообщения: 17
Зарегистрирован: 2010.07.14, 07:19

Re: Избавляемся от index.php при использовании nginx

Сообщение ted » 2010.08.28, 11:17

У меня заработало с таким конфигом:

Код: Выделить всё

                location / {
                        root /usr/www/example.com;
                        index index.php;
            
            if (!-e $request_filename) {
                rewrite (.*) /index.php last;
            }
                }
 
С приведенным выше конфигом были проблемы с бесконечным циклом и с 404

Аватара пользователя
Dmitry
Сообщения: 112
Зарегистрирован: 2010.06.07, 15:00

Re: Избавляемся от index.php при использовании nginx

Сообщение Dmitry » 2010.10.28, 21:53

ted писал(а):У меня заработало с таким конфигом:

Код: Выделить всё

                location / {
                        root /usr/www/example.com;
                        index index.php;
            
            if (!-e $request_filename) {
                rewrite (.*) /index.php last;
            }
                }
 
С приведенным выше конфигом были проблемы с бесконечным циклом и с 404
Подтверждаю, следует изменить текст рецепта. Так же были проблемы с бесконечной переадресацией пока не воспользовался  rewrite (.*) /index.php last;
Yii Jabber Conference: yii@conference.jabber.ru

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.02, 13:02

Автор nginx Игорь Сысоев говорит, что это плохая практика, лучше использовать try_files

Код: Выделить всё

 location / {
        try_files $uri $uri/ @php;
    }

    location ~ \.php$ {
        try_files $uri @php;
        fastcgi_pass yii;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/yii/www$fastcgi_script_name;
        include fastcgi_params;
    }

    location @php {
        fastcgi_pass yii;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/yii/www/index.php;
        fastcgi_param SCRIPT_NAME /index.php;
        fastcgi_param QUERY_STRING q=$uri&$args;
        include fastcgi_params;
    }
Более подробнее можно посмотреть в моей статье по настройке yii с nginx+php-fpm

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.02, 13:47

Насколько я знаю, работать это будет только в последних версиях nginx. Попробую проверить и, если всё будет как надо, добавлю в рецепт.

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.02, 14:35

try_files появился с версии 0.6.36

AbS_
Сообщения: 207
Зарегистрирован: 2010.03.27, 14:02

Re: Избавляемся от index.php при использовании nginx

Сообщение AbS_ » 2010.12.02, 17:57

Игорь вроде не рекомендует делать try_files?

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.02, 18:04

Попробовал в очередной раз и вспомнил, почему try_files мне не нравится: не поддаётся отладке. Настоящий чёрный ящик.

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.02, 20:39

AbS_ писал(а):Игорь вроде не рекомендует делать try_files?
http://sysoev.ru/nginx/docs/faq.html
Sam Dark писал(а):Попробовал в очередной раз и вспомнил, почему try_files мне не нравится: не поддаётся отладке. Настоящий чёрный ящик.
Всмысле не поддаётся отладке? Вроде бы понятно как работает.

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.02, 20:45

После try_files ничего не перехватишь, рерайт не сделаешь… в общем, неудобно.

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.02, 21:49

Sam Dark писал(а):После try_files ничего не перехватишь, рерайт не сделаешь… в общем, неудобно.
А если сделать реврайт в корневом location, до try_files?

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.02, 22:06

Ну, можно конечно. т.е. конфиг тут http://www.yiiframework.com/wiki/15/how ... p-on-nginx полностью рабочий?

AbS_
Сообщения: 207
Зарегистрирован: 2010.03.27, 14:02

Re: Избавляемся от index.php при использовании nginx

Сообщение AbS_ » 2010.12.02, 22:55

хм.. старнно, у меня при таких настройках на файл jquery.js выдает 404, если не убирать index.php то все норм.

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.03, 01:10

Sam Dark, да, вроде конфиг этот рабочий

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.03, 01:11

Вроде или проверено?

AbS_
Сообщения: 207
Зарегистрирован: 2010.03.27, 14:02

Re: Избавляемся от index.php при использовании nginx

Сообщение AbS_ » 2010.12.03, 01:48

Конфиг работтает, я только проверил, но у меня тогда не подцепляется jquery хз почему

Аватара пользователя
samdark
Администратор
Сообщения: 9128
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение samdark » 2010.12.03, 01:59

Значит всё-таки есть какая-то проблема…

Аватара пользователя
Stamm
Сообщения: 407
Зарегистрирован: 2010.03.14, 18:59
Откуда: Россия, Москва
Контактная информация:

Re: Избавляемся от index.php при использовании nginx

Сообщение Stamm » 2010.12.03, 09:18

Я проверил, конфиг работает

Ответить