[alert]: fastcgi request record is too big -Fastcgi получает сообщение об ошибке, что get request is too long

Недавно программа столкнулась с проблемой, LNMP среде, потому что PHP в программе сращивается GET запрос uri параметр слишком длинный, что приводит к ошибке, nginx обработка uri слишком длинный может быть обработан клиент_head_buffer_size параметр, но когда nginx получил запрос uri, переадресованный PHP, fastcgi не может обработать ошибку запроса (не рассматривайте изменение запрос на post).

Система:linux CentOS7 nginx:1.14.0 php:7.2.0

Решение для Apache:

Добавьте несколько параметров в конфигурационный файл LimitRequestLine 40940 LimitRequestFieldSize 40940

Решение для Nginx:

**Как увеличить лимит fastcgi для принятия размера параметра uri?**

user              test;
worker_processes  2;
worker_cpu_affinity 0101 1010;
worker_rlimit_nofile 65535;

events {
    use epoll;
    worker_connections  65535;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';
include              mime.types;
default_type application/octet-stream;
charset utf-8;
sendfile                     on;
tcp_nopush                   on;
keepalive_timeout          300s;
client_header_timeout      300s;
client_body_timeout        300s;
client_max_body_size       100m;
client_body_buffer_size   2048k;
client_header_buffer_size  1024k;
large_client_header_buffers 32 64k;
send_timeout               300s;
fastcgi_connect_timeout    300s;
fastcgi_send_timeout       300s;
fastcgi_read_timeout       300s;
fastcgi_buffer_size       1024k;
fastcgi_buffers          64 64k;
fastcgi_busy_buffers_size  2048k;
fastcgi_temp_file_write_size 2048k;
gzip                         on;
gzip_min_length              1k;
gzip_buffers             16 16k;
gzip_http_version           1.1;
gzip_types text/plain text/css application/javascript application/xml;
gzip_comp_level               3;
gzip_vary                    on;
server_names_hash_max_size  512;
server_names_hash_bucket_size  128;
include /*.conf;
}

Журнал ошибок Fastcgi. [1]: https://i.stack.imgur.com/lzV4H.png

Пожалуйста, помогите!!! SOS

-1
задан 14 December 2018 в 09:55
1 ответ

Похоже, что это невозможно исправить только со стороны nginx или php-fpm, но все же можно исправить на уровне приложения, потому что масштабирование client_body_buffer на самом деле не является продуктивным способом (но как обходной путь, который вы можете попробовать, хотя я не рекомендую его).

См. эту ветку .

0
ответ дан 5 December 2019 в 20:19

Теги

Похожие вопросы