Desculpe se isso é duplicado, eu acho que seria, mas não consegui encontrar nada.
Eu tenho um aplicativo flex que estou postando dados de volta para um servidor php / mysql via IE. Ainda não enfrentei nenhum problema, mas saber disso com antecedência pode me poupar um monte de frustração e trabalho. Existe um limite de tamanho para postar dados via http?
Este artigo diz não: http://www.netlobo.com/ie_form_submit.html
Esta discussão diz que sim: http://bytes.com/topic/php/answers/538226-what-maximum-limit-using-post-method
E tudo vai e volta do que eu posso encontrar online. Portanto , limite as respostas aos números testados / verificados pessoalmente.
Estou querendo postar de volta uma seqüência XML que pode ser bastante grande (digamos, até 5mb).
Se isso faz alguma diferença: o navegador sempre será o IE (nosso produto exige), a publicação vem e o httpService no flex, o servidor web é php, o DB é mySql.
fonte
Respostas:
Depende da configuração do servidor. Se você estiver trabalhando com PHP no Linux ou similar, poderá controlá-lo usando o arquivo de configuração .htaccess, da seguinte maneira:
E, sim, posso atestar pessoalmente que isso funciona :)
Se você estiver usando o IIS, não faço ideia de como você definiria esse valor específico.
fonte
post_max_size
configuração? Sou um pouco iniciante no php e não consigo encontrá-lo em nenhum lugar da nossa base de código (usando o processo find-all do dreamWeaver). Eu pediria aos administradores do nosso sistema, mas eles são maus. :-PA parte da URL de uma solicitação (GET e POST) pode ser limitada pelo navegador e pelo servidor - geralmente o tamanho seguro é de 2 KB, pois quase não há navegadores ou servidores que usem um limite menor.
O corpo de uma solicitação (POST) é normalmente * limitado pelo servidor com base no tamanho de bytes, a fim de evitar um tipo de ataque de DoS (observe que isso significa que o escape de caracteres pode aumentar o tamanho de bytes do corpo). A configuração mais comum do servidor é 10 MB, embora todos os servidores populares permitam aumentar ou diminuir esse valor por meio de um arquivo ou painel de configuração.
* Existem algumas exceções em celulares mais antigos ou em outros navegadores de dispositivos pequenos - nesses casos, é mais uma função do espaço de pilha reservado para essa finalidade no dispositivo do que qualquer outra coisa.
fonte
curl
Além disso, no arquivo PHP.INI, há uma configuração:
que na minha versão do PHP: 5.4.16 o padrão é 1000.
No manual: "Quantas variáveis de entrada podem ser aceitas (o limite é aplicado a superglobal $ _GET, $ _POST e $ _COOKIE separadamente)"
Ref .: http://www.php.net/manual/en/info.configuration.php#ini.max-input-vars
fonte
Você pode postar uma grande quantidade de dados configurando a variável php.ini:
max_input_vars
O tamanho padrão dessa variável é 1000, mas se você quiser enviar uma grande quantidade de dados, precisará aumentar o tamanho de acordo. Se você não pode definir o tamanho do ini_set, deve fazê-lo completamentehtaccess
ou fazendo alterações diretamente no arquivo php.ini.fonte
Como David apontou, eu usaria o KB na maioria dos casos.
Nota: meu formulário é simples, apenas algumas caixas de texto, não texto longo.
fonte
Por padrão, a solicitação de postagem tem tamanho máximo de 8 MB. Mas você pode modificá-lo de acordo com seus requisitos. A modificação pode ser feita abrindo o arquivo php.ini (configuração php).
Encontrar
substitua 8 de acordo com suas necessidades.
fonte
Cabe ao servidor http decidir se existe um limite. O produto em que trabalho permite que o administrador configure o limite.
fonte
Uma das melhores soluções para isso, você não usa vários ou mais de 1.000 campos de entrada. Você pode concatenar várias entradas com qualquer caractere especial, por exemplo.
@
.Veja isso:
Usando qualquer script (JavaScript ou JScript),
Com isso, você ignorará o
max_input_vars
problema. Se você aumentarmax_input_vars
o arquivo php.ini, isso é prejudicial ao servidor porque ele usa mais memória cache do servidor e, às vezes, pode travar o servidor.fonte
max_input_vars
opção no modophp.ini
com isto. Não exatamente, o que foi solicitado, mas ainda útil.Para desenvolvedores que não podem alterar a configuração do php por causa da hospedagem na web. (Minhas configurações, tamanho máximo de 256 MB, 1000 variáveis máximas)
Eu tive o mesmo problema: apenas 2 dos 5 objetos de big data (matrizes associativas) com subestruturas foram recebidos no lado do servidor.
Descobri que toda a subestrutura está sendo "achatada" na solicitação de postagem. Portanto, um objeto se torna centenas de variáveis literais. No final, em vez de 5 variáveis de objeto, na verdade, ele está enviando dezenas de centenas de variáveis elementares.
A solução nesse caso é serializar cada uma das subestruturas em String. Em seguida, é recebido no servidor como 5 variáveis de String. Exemplo:
{variable1:JSON.stringify(myDataObject1),variable2:JSON.stringify(myDataObject2)...}
fonte