WordPress, error de permisos al subir imagenes

Escrito el 24 de Octubre de 2009 por crazymen

Tras instalar WordPress y activar “Organizar mis subidas en carpetas basadas en mes y año” el script da un error al subir las imagenes tanto en modo flash como en modo explorador, el error es:

No se pudo crear el directorio /var/www/vhosts/midominio.com/httpdocs/wp-content/2009/17. Asegúrese de que el servidor tiene permisos de escritura para el directorio superior.

Combrando los permisos me encuentro que el directorio tiene 755 con lo cual no deberia de tener problemas, pero no funcionaba, asi que buscando por google me encontre con distintas soluciones.

Algunas eran que en la configuracion de WordPress ir a “Opciones>Miscelaneas” y en la primera opcion que es  “Guardar los archivos subidos en esta carpeta” comprobar que NO tenemos una barra hacia la derecha ni al principio ni al final, en este caso seria “wp-content/uploads”, lo tenia bien asi que continue buscando mas soluciones.

Otra opcion era desactivar el modo de subir imagenes desde flash y dejar solo desde el navegador, usando el plugin “No Flash Uploader”, pero no me valia ya que en principio solo es para el WordPress 2.5 o anteriores y ademas tampoco me valia porque a mi no me dejaba subir tampoco desde el navegador.

Tambien encontre una solucion que era usando el archivo .htaccess, para desactivar opciones del mod_security de apache, el codigo es:

SecFilterEngine Off
SecFilterScanPOST Off

Usando el .htaccess tampoco consegui arreglar el problema. Cuando ya no conseguia encontrar mas soluciones por google vi en una pagina en ingles que ponian diversos metodos de solucionarlo, los mire y habia probados todos excepto el ultimo, que era comprobar en el servidor que estaba desativada la opcion safe_mode, lo mire en mi dominio y la tenia activada, fue desactivarla y ya podia crear las carpetas el script sin ningun problema.

Por lo visto al tener activado el modo seguro(safe mode) en el dominio, cuando usamos el comando de php mkdir() que sirve para crear directorios al estar activado el safe mode comprueba si el directorio donde se va a crear la carpeta si tiene el mismo identificador(UID) que el script y es por lo que no crea la carpeta, por que no coincide.  Se puede encontrar informacion sobre safe mode en http://de.php.net/features.safe-mode

Asi que despues de tanto rollo con los permisos de las carpetas, la solucion era desactivar una casilla como se puede ver en mi panel Plesk:

Modo seguro desactivado

Modo seguro desactivado




Lo sentimos, los comentarios de esta entrada están cerrados en este momento.