1

У меня есть установка, использующая приложение флешки python на эластичном бобовом стебле. Моя проблема в том, что я получаю код ошибки 414. Я добавил LimitRequestLine 200000 к httpd.conf и перезапуск с sudo httpd service restart на корпусе экземпляра EC2, но это, кажется, не сделать трюк ..aws эластичный beanstalk «Request-URI Too Long»

Это отлично работает для сервера апача работает на EC2 не на упругом бобовый стебель. Может быть, обвинитель нагрузки виноват?

Я бы очень признателен за любую помощь по этому ...

другой странная вещь - если перезапустить HTTPd службу из оболочки на экземпляре EC2, длинный URI может пройти один раз, и только один раз - во второй раз Я получаю 414 раз ..

Благодаря

+0

Если вам нужно отправить, что много данных, вы должны быть действительно с помощью POST. Есть ли причина, почему вы не можете? – datasage

ответ

1

LimitRequestLine должны находиться в пределах <VirtualHost> секции. Его довольно сложно сделать в Elastic Beanstalk, так как вам нужно добавить эту линию в /etc/httpd/conf.d/wsgi.conf, который автогенерируется после запускаются как commands, так и container_commands. Следуя идее из this блога, добавив следующую строку в конфигурационный файл под .ebextensions работал:

commands: 
    create_post_dir: 
    command: "mkdir -p /opt/elasticbeanstalk/hooks/appdeploy/post" 
    ignoreErrors: true 
files: 
    "/opt/elasticbeanstalk/hooks/appdeploy/post/99_adjust_request_limit.sh": 
    mode: "000755" 
    owner: root 
    group: root 
    content: | 
     #!/usr/bin/env bash 
     sed -i.back '/<VirtualHost/aLimitRequestLine 100000' /etc/httpd/conf.d/wsgi.conf 
     supervisorctl -c /opt/python/etc/supervisord.conf restart httpd 
Смежные вопросы