Появилась необходимость обработать POST запрос на стороне nginx, доку вроде нашел, но все же не смог разобраться толком.
Пакет у меня: nginx-0.7.67-1.fc13.i686
Вот такое я накодил:
[code]
use nginx;
package mymodule;
our $r;
sub check_input {
$r = shift;
if ( $r->request_method eq 'POST' ) {
$r->has_request_body( \&mymodule::check_input_process_post );
}
return 0;
}
sub check_input_process_post {
return 1;
}
1;
__END__
[/code]
в результате, получил ошибку сегментации
[code]
2010/09/14 15:30:12 [notice] 2488#0: signal 17 (SIGCHLD) received
2010/09/14 15:30:12 [alert] 2488#0: worker process 2526 exited on signal 11 (core dumped)
2010/09/14 15:30:12 [notice] 2488#0: start worker process 2539
2010/09/14 15:30:12 [notice] 2488#0: signal 29 (SIGIO) received
2010/09/14 15:30:12 [notice] 2488#0: signal 17 (SIGCHLD) received
2010/09/14 15:30:12 [alert] 2488#0: worker process 2524 exited on signal 11 (core dumped)
2010/09/14 15:30:12 [notice] 2488#0: start worker process 2541
2010/09/14 15:30:12 [notice] 2488#0: signal 29 (SIGIO) received
[/code]
с помощью научного тыка, выяснил, что проблема у меня в:
[code]
$r->has_request_body( \&mymodule::check_input_process_post );
[/code]
судя по логам измеенений, ранее была проблема с [b]$r->has_request_body[/b], но начиная с версии [b]0.6.22[/b] должны были устранить...
...кто-то может мне помочь? )