31 octubre, 2017

Solucionar Warning is_readable(): open_basedir restriction in effect

Si te sale este tipo de error, para solucionarlo es tan sencillo como desactivarlo en la configuración del php.

Antes de hacer esto veamos por qué sale y qué significa este error:

El límite de los ficheros a los que PHP puede acceder en el árbol de directorios especificado, incluyendo el fichero en sí. Esta directiva NO se ve afectada si el Modo Seguro está activado (On) o desactivado (Off).

Cuando un script intenta acceder al sistema de ficheros, por ejemplo, usando include, o fopen(), se comprueba la ubicación del fichero. Cuando el fichero está fuera del árbol de directorio especificado, PHP rechazará acceder a él. Todos los enlaces simbólicos se resuelven, por lo que no es posible evitar esta restricción con un enlace simbólico. Si el fichero no existe, el enlace simbólico no podría ser resuelto, por lo que el nombre de fichero se compara con (uno resuelto) open_basedir .

Para más info: http://php.net/manual/es/ini.core.php#ini.open-basedir

Para solucionarlo nos vamos a la configuración php del dominio en cuestión o del servidor:

En mi caso:

  1. Accedo al panel de control plesk.
  2. Me voy a Dominio y entro en el dominio en cuestión.
  3. Me voy a configuración php.
  4. En el parámetro open_basedir pongo el valor a none.

Y listo.