Estoy trabajando en la carga de archivos a través de una página web con una barra de progreso usando Valums file uploader. Casi todo funciona bien, pero no puedo cambiar el directorio tmp predeterminado, donde se almacena el archivo durante la carga.Configuración de PHP tmp dir - PHP upload no funciona
archivos deben ser almacenados en /upload
directorio y no en el sistema por defecto /tmp
directorio, porque /tmp
está montado en un disco RAM que tiene su tamaño limitado a 4 MB y el usuario será la posibilidad de subir archivos a unos 10 MB.
He buscado muchas páginas web, pero ninguna de las soluciones ha funcionado. he fijado en el directorio temporal php.ini
:
upload_tmp_dir =/upload
he establecer permisos a la /upload
dir y Apache es propietario del archivo, por lo que el directorio es definitivamente escribible por PHP.
He establecido la ruta de destino en el cargador de archivos al /upload
, porque quiero que los archivos se almacenen después de la carga también en este directorio. El resultado final es que los archivos pequeños se cargan exitosamente, pero los archivos de más de 4 MB no se pueden subir; la única razón de este comportamiento que se me ocurre es que los archivos se almacenan en /tmp
durante la carga. Para estar seguro, lo he comprobado con sys_get_temp_dir()
y el resultado fue /tmp
-así que PHP ignora mi directiva php.ini o hay alguna otra forma de establecer dónde se almacenan los archivos durante la carga.
Ah, y la última información: open_basedir
no está configurada, por lo que el acceso de PHP al disco solo está limitado por los permisos de archivo.
¿Ha reiniciado el servidor (lo siento por esta pregunta tonta)? – soju
No hay preguntas tontas, solo respuestas tontas :). Sí, lo he hecho muchas veces al intentar resolver el problema y probar diferentes soluciones. – Wookie88
¿Comprobó que php no está instalado como mod cgi? (De doc: * Si el directorio especificado aquí no es modificable, PHP vuelve al directorio temporal predeterminado del sistema *) – soju