imagenes - descargar plantillas laravel 5 gratis
Cómo subir una imagen de gran tamaño por Imagen de intervención en Laravel 5 (2)
En realidad, este es el problema de los valores de variables de configuración del lado del servidor en el archivo php.ini
. si carga más que la configuración post_max_size de su servidor, la entrada estará vacía, obtendrá un error de coincidencia de Tokens.
cambie upload_max_filesize
, post_max_size
value según lo requiera y reinicie el servidor.
Estoy usando Image Intervention en mi proyecto.
Mi aplicación funciona sin problemas mientras se cargan imágenes de tamaño pequeño. Pero cuando intento subir una imagen de gran tamaño (> 2 mb), ¡mi aplicación deja de funcionar!
Incluso no muestra errores apropiados. A veces muestra un error de Token mismatch
y, a veces, la URL no redirige.
¿Como arreglarlo? No tengo idea.
Aquí está mi código:
$post->new Post();
if($request->hasFile(''image'')){
$image=$request->file(''image'');
$filename=Auth::user()->id.''_''.time().''.''.$image->getClientOriginalExtension();
$location=public_path(''images/''.$filename);
Image::make($image)->save($location);
$post->image=$filename;
}
$post->save();
Estoy usando Image intervention
para subir imágenes. Pero también puedes sugerir una alternativa.
¡Gracias!
Resulta que esto es un problema de memoria. Si comprueba el error, inicie sesión con él y vea que el servidor se quedó sin memoria. Verás algo así como
PHP Fatal error: Allowed memory size of XXXXXXXX bytes exhausted (tried to allocate XXXXX bytes) in ...
Debido a que la imagen de intervención lee toda la imagen píxel por píxel manteniendo los datos en la memoria, las imágenes aparentemente pequeñas como 2 MB pueden terminar requiriendo docenas de MB de memoria para procesar.
Es posible que deba establecer el límite de memoria en el valor más alto disponible y verificar el tamaño del archivo antes de que se abra porque un sitio que se rompe sin mensajes de error es embarazoso. Usa algo como
if( $request->hasFile(''image'') && $request->file(''image'')->getClientSize() < 2097152 ){
$image=$request->file(''image'');
$filename=Auth::user()->id.''_''.time().''.''.$image->getClientOriginalExtension();
$location=public_path(''images/''.$filename);
Image::make($image)->save($location);
$post->image=$filename;
}