Пустой массив $_POST

star0x4b на gmail.com star0x4b на gmail.com
Вт Дек 21 12:24:10 MSK 2010


Здравствуйте.

Есть конфиг сайта, работающего на zend framework. Перенаправление
несуществующих страниц на index.php осуществлялось с помощью директивы
error_page 404, но тут появилась проблема - POST-запросы передавались от
нжинкса в php пустыми. GET-запросы при этом передаются нормально. Если
же перенаправлять с помощью реврайта - все работает. Но использовать
реврайты некошерно, поэтому хотелось бы понять, что не так с error_page?
Конфиг приведен ниже.

server {
        listen      80;
        server_name  servername.ru;
        root   /usr/local/www/repos/servername.ru/public;
        access_log  /var/log/nginx/zfproject_main_access.log;
        error_log  /var/log/nginx/zfproject_error.log;

        index    index.php;
#        error_page 404 = /index.php?$args;
        rewrite  ^(/.*)$  /index.php last;

       location /index.php {
           fastcgi_pass unix:/tmp/php-fpm.sock;
           fastcgi_param SCRIPT_FILENAME   $document_root/index.php;
           fastcgi_param APPLICATION_ENV    development;
           fastcgi_param REQUEST_URI           $request_uri;
           fastcgi_param REQUEST_METHOD  $request_method;
           fastcgi_param CONTENT_TYPE        $content_type;
           fastcgi_param CONTENT_LENGTH   $content_length;
           include /usr/local/etc/nginx/fastcgi_params;
        }
}

Пример запроса, если использовать GET-метод вместо POST -
/registration/register/?iagree=1&proceed=Далее



Подробная информация о списке рассылки nginx-ru