Limite do PHP / Apache POST?

5

Estou tentando editar artigos grandes (200 KB ou mais) na minha instalação do MediaWiki, mas isso me dá este erro:

Request Entity Too Large

The requested resource

/path/to/my/wiki/index.php

does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit.

De acordo com os documentos do Apache, o LimitRequestBody é por padrão 0 (ilimitado) . Não acho que esteja perto do limite MediaWiki de 2048 KB. Não consigo encontrar onde / se o PHP está me limitando.

O que dá?

Atualização: Meus logs de erro do Apache dizem:

request body exceeds maximum size for SSL buffer

E logo abaixo disso:

could not buffer message body to allow SSL renegotiation to proceed

Parece que uma possível solução pode ser encontrada aqui .

Mas é necessário recompilar mod_ssl . Parece que no final do relatório de bug eles estavam falando sobre adicionar uma diretiva para isso, em vez de recompilar. Alguém sabe se isso aconteceu? Além disso, preciso apenas recompilar mod_ssl para essa correção? E, em caso afirmativo, como uso minha versão compilada em vez da versão Ubuntu?

    
por mrduclaw 30.10.2009 / 01:26

3 respostas

6

Por que você não verifica o tamanho da solicitação POST. Por exemplo, você pode usar o netcat para ouvir em 8080.

netcat -l -p 8080

Em seguida, redirecione seu navegador para usar um proxy na porta 8080 antes de enviar o formulário. Você deve ter algo assim:

POST http://example.com/path/to/my/wiki/index.php HTTP/1.1
Host: example.com
Proxy-Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 217

A linha mais importante é Content-Length e basta verificar novamente o comprimento real do conteúdo. Isso pelo menos ajudará você a determinar onde as coisas estão indo mal. Você terá pelo menos uma ideia do tamanho real do conteúdo.

Em seguida, verifique se você está se conectando diretamente ao Apache e não através de um proxy ou de um proxy reverso. Alguns proxies reversos colocam um limite no tamanho máximo de uma solicitação como uma espécie de medida de segurança. Então, você pode querer verificar isso, assim como seus logs do Apache, para garantir que nada mais esteja acontecendo.

    
por 30.10.2009 / 01:46
0

Eu tive o erro "413 Request Entity Too Large".

O

link resolveu meu problema.

    
por 18.10.2013 / 13:01
0

Eu tive esse mesmo erro e foi de segurança de mod relacionada ao ajax carregando 500MB e menos arquivos, para corrigir eu abri a configuração.

sudo vi /etc/httpd/conf.d/mod_security.conf

Alterado isso

SecRequestBodyLimit 131072 
SecRequestBodyNoFilesLimit 
SecRequestBodyInMemoryLimit

Para:

SecRequestBodyLimit 524288000
SecRequestBodyNoFilesLimit 524288000
SecRequestBodyInMemoryLimit 524288000
    
por 09.07.2016 / 22:32