все таки как вылечить 405 ошибку :(

Michail Baikov lists at baikov.com
Wed Jun 21 14:14:43 MSD 2006


Igor Sysoev wrote:
> On Wed, 21 Jun 2006, Michail Baikov wrote:
> 
>>>>
>>>>
>>> я сделал:
>>>
>>>         location /service/ {
>>>             rewrite  /service/  /service/index.php  last;
>>>         }
>>>
>>> #        location / {
>>> #            root                /var/www/xxxxxxxx.ru/htdocs;
>>> #            index               index.php index.html index.htm;
>>> #        }
>>>
>>>
>>>
>>>
>> Оказалось - что отвалилился новый вариант обработки. :(
>>
>> location /service/ {
>>     rewrite             ^/service/\?(.*)$  /service/index.php?$1  last;
>> }
>>
>>
>> Все равно при POST с параметрами ?list выводится 405 ошибка :(
>>
>> Что тут не так? Пробовал и break...
> 
> Если нужно делать внутренний редирект только для /service/, то
> 
> location = /service/ {
>      rewrite  ^           /service/index.php  last;
>      или
>      rewrite  ^/service/  /service/index.php  last;
> }
> 
> В исходном URI не нужно указывать аргументы ( \?(.*)$ ).
> 
> 
> Игорь Сысоев
> http://sysoev.ru
> 
> 
Этот вариант не работает.
Объясню конкретно проблему.


Клиент посылает запрос:

<form method="post" action="/service/?list">
<input type="submit">
</form>

ессно nginx сваливается с 405 ошибкой.

Как сделать чтобы данная форма корректно обрабатывалась. Можно менять
конфигурацию nginx - можно менять серверную часть кода.

Эту форму изменять нельзя.

Была мысль сделать с помощью rewrite вызов /service/list.php - но что-то
не получается.

-- 
Mike Baikov <mike at baikov dot com>
GameDot Labs Developer







More information about the nginx-ru mailing list