ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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



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





 




Copyright © Lexa Software, 1996-2009.