Массив $_POST приходит пустой
Igor Sysoev
is at rambler-co.ru
Fri Dec 19 10:17:06 MSK 2008
On Fri, Dec 19, 2008 at 01:48:03AM +0200, Alexander wrote:
> Я пытаюсь нормально настроить nginx+php+fastCGI для запуска скрипта Magento
> Урлы в magento выглядят следующим образом
>
> index.php/controller/action/etc
> соответственно "чистые ссылки" должны выглядеть
> /controller/action/etc
>
> все вроде заработало, кроме одной вещи: при попытке логина (урл
> вида /admin/.....) перебрасывает снова на страницу ввода пароля. Оказывается,
> массив $_POST по какой-то причине до php не доходит.
>
> вот что у меня в файле конфига:
> location @magento {
> include /etc/nginx/fastcgi_params;
> fastcgi_param
> SCRIPT_FILENAME /home/alex/public_html/server.com/index.php;
> rewrite /js/index.php/x.js(.*) /js/index.php last;
> rewrite (.*) /index.php last;
> }
> location @js {
> include /etc/nginx/fastcgi_params;
> fastcgi_param
> SCRIPT_FILENAME /home/alex/public_html/server.com/index.php;
> rewrite x.js(.*) /js/index.php last;
> }
>
> location = /js/index.php/x.js {
> error_page 404 = @js;
> }
>
> location / {
> error_page 404 = @magento;
> }
Во-первых, нужно выбросить rewrite-ересь из головы.
Во-вторых, похоже, в "location @magento" нет fastcgi_pass.
В-третих, точный /js/index.php/x.js не нужно перенаправлять, его нужно
сразу обрабатывать. Только что с ним нужно делать, я не понял.
Всё вышеприведённое нужно заменить на
location / {
error_page 404 = @magento;
}
location @magento {
fastcgi_pass ...
fastcgi_param SCRIPT_FILENAME /home/alex/public_html/server.com/index.php;
include /etc/nginx/fastcgi_params;
}
--
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list