Foros del Web » Programando para Internet » PHP »

Problemas con límite de POST

Estas en el tema de Problemas con límite de POST en el foro de PHP en Foros del Web. Buenos días, tengo una web con windows que envía unos datos vía POST a otra página y los recibe perfectamente. Tengo esta misma web en ...
  #1 (permalink)  
Antiguo 01/04/2015, 01:54
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Problemas con límite de POST

Buenos días,

tengo una web con windows que envía unos datos vía POST a otra página y los recibe perfectamente.
Tengo esta misma web en un servidor linux y no recibo los datos.

He configurado lo siguiente en el archivo php.ini:

post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M

También he configurado lo siguiente en el archivo apache2.conf:

php_value upload_max_filesize 750M
php_value post_max_size 750M
php_value memory_limit 1000M

Servidor:
Linux 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u2 x86_64

Versión PHP:
PHP Version 5.3.3-7+squeeze19

He reiniciado el servidor apache.

Que más puedo hacer?

Gracias,

Saludos
  #2 (permalink)  
Antiguo 01/04/2015, 03:02
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problemas con límite de POST

Bueno, podrías explicar mejor el problema, porque en realidad no nos estás diciendo que "límite de POST " es el que te causa inconvenientes.
¿A qué te refieres?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 01/04/2015, 03:28
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Problemas con límite de POST

Buenos días,

El problema es que estoy leyendo una variable $_POST[] vacía cuando envío datos superiores a 500kb (el texto que envío por post lo he guardado en un archivo .txt y eso es lo que pesa).

Ese mismo texto, borrando algunas partes y ocupando 400 kb, $_POST[] tiene valor cuando la leo.

Ese mismo código en un servidor windows funciona y cuando he realizado el cambio en servidor linux no (lo comento por si tiene alguna cosa que ver).

Saludos
  #4 (permalink)  
Antiguo 01/04/2015, 04:47
Avatar de Jilti  
Fecha de Ingreso: abril-2007
Mensajes: 47
Antigüedad: 17 años
Puntos: 4
Respuesta: Problemas con límite de POST

Saludos...
Has mirado en el archivo .htaccess si hay alguna linea que lo limite?.

Si no es así métele estas lineas
Código:
php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value max_execution_time 120
Bueno, o la cantidad que tu quieras, claro
  #5 (permalink)  
Antiguo 01/04/2015, 05:12
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Problemas con límite de POST

Buenos días,

lo he añadido y sigue igual, no funciona.

Saludos
  #6 (permalink)  
Antiguo 01/04/2015, 06:00
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problemas con límite de POST

¿Podrías postear el código del script que realiza el envio, a fin de verificar exactamente cómo estás intentando subir el archivo usando POST?
No sería imposible que el problema no sea el que pareces estar descibiendo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 01/04/2015, 06:52
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Problemas con límite de POST

Hola,

no estoy subiendo ningún archivo, lo del .txt era para saber lo que ocupa todo lo que estoy enviando por POST.

El código es el siguiente:

Código HTML:
<script>
function enviar(){
  $("#id_contenido_div").val($("<div>").append($("#id_informe").eq(0).clone()).html());
  $("#id_form").submit();

}
</script>


<form action='informe.php' method='post' target='_blank' id='id_form'>
<img onclick='enviar();' src="img/icono.gif">
<input type='hidden' id='id_contenido_div' name='contenido_div' value='' />
</form>

<div id='id_informe'>Aquí está todo el contenido que es variable porque es un informe y todo este contenido lo envío por POST a la pagina informe.php que genera un archivo excel entre otras cosas...</div>


Y en informe.php

Código HTML:
echo($_POST['contenido_div]); //viene vacio cuando es superior a 500kb aproximadamente.

Saludos
  #8 (permalink)  
Antiguo 01/04/2015, 07:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problemas con límite de POST

La maxima longitud de un campo o variable pasado por POST tiene muchas variaciones dependiendo del WebServer, el browser, e incluso el la tecnocloçgia usada (PHP, en neustro caso).
El fallo puede estar causado por diferentes cosas, y no necesariament tiene una solución desde el lado de PHP.
De tu lado sólo existen dos caminos:
Código BASH:
Ver original
  1. hp.ini
  2.  
  3. post_max_size=20M
  4. upload_max_filesize=20M
  5.  
  6. .htaccess
  7.  
  8. php_value post_max_size 20M
  9. php_value upload_max_filesize 20M
Fuera de eso, dependería mucho del navegador.

Francamente, lo veo poco práctico. Si vas a subir una cantidad masiva de datos te conviene subir un archivo, o bien realziar la tarea por medio de WS.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 01/04/2015, 07:31
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Problemas con límite de POST

Hola,

no estoy subiendo ningún archivo, la idea es exportar a excel el contenido que se muestra dentro de una div, para ello, lo envío mediante post a otra página que simplemente pone los headers para exportar en formato excel.

lo que no entiendo es que en el servidor windows me funciona correctamente.

Además, con la versión de php 5.4 (instalado en otro servidor sin configurar el post_max_size y demás instrucciones) me funciona bien.

En principio he revisado 3 sitios diferentes tal y como hemos comentado por aquí:

php.ini
.htacces
apache2.conf

Saludos
  #10 (permalink)  
Antiguo 01/04/2015, 07:34
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Problemas con límite de POST

Cita:
no estoy subiendo ningún archivo
Ya te entendí, ya me lo dijiste en el post anterior.
Lo que yo te quiero decir es que, aunque funcionase, me parece algo totalmente impráctico, y proclive a fallos por diferencia de plataformas. No le veo la utilidad a hacer algo por POST que puedes resolver por FILE... En serio.

Me parece una pésima solución, sin importar qué "funcionalidad" le encuentres.

Me parece que hay otros medios para lograr lo mismo, y de modos con menos complcaciones.

Posdata: en un post de un sitio de desarrollo encontré un detalle intersante posteado por un tal Greg Porter :
Cita:
Los valores del archivo php.ini que las cargas de efecto son:

Código BASH:
Ver original
  1. file_uploads
  2.      upload_max_filesize
  3.      max_input_time
  4.      memory_limit
  5.      max_execution_time
  6.      post_max_size
Por lo general establecer post_max_size al doble del valor de upload_max_filesize.
En términos generales, memory_limit debería ser mayor que post_max_size.

El servidor web apache tiene una directiva de configuración LimitRequestBody que restringe el tamaño de todos los datos POST, independientemente del lenguaje de programación web en uso
Es decir, existen límites a nivel WebServer que no peudes saltear por PHP.

Verifica con los administradores del host.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 01/04/2015 a las 07:39
  #11 (permalink)  
Antiguo 01/04/2015, 07:58
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Problemas con límite de POST

Hola,

bueno la idea principal es tener X páginas con diferentes informes (un código html con formato: colores, celdas, negritas etc...)

Cada página en php hace una serie procedimientos que muestran por pantalla ese informe.

Cuando el usuario desee exportarse el informe, le dará a un botón que exportará ese excel.

Quizás hay muchas maneras de poder exportar una web en excel.

La que estoy usando es simplemente enviar el contenido del que ya dispongo (colores, celdas, negritas, etc...) a un archivo con las cabeceras de php:

header("Content-type: application/vnd.ms-excel; name='excel'");
header("Content-Disposition: filename=informe.xls");

No se si es la mejor/peor manera, más/menos óptima, funcional... creo que es una buena opción porque solamente tengo que modificar el código en la página de informe1.php. Me ahorro de usar librerías específicas de excel y otras cosas.

Se esté haciendo bien o mal con este método, no entiendo porque no funciona en un servidor y en otro servidor sí.


Posdata: gracias, también encontré lo de memory_limit y demás y he configurado con valores de internet y luego personalizados, es decir, 3000M y demás pero sigue igual.

Seguramente tenga relación con lo que comentas en varios comentarios del tema de restricción independientemente de PHP.

Gracias

Saludos

Última edición por xinxan22; 01/04/2015 a las 08:04

Etiquetas: post
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:22.