Foros del Web » Programando para Internet » PHP »

Problema require/include

Estas en el tema de Problema require/include en el foro de PHP en Foros del Web. Les cuento, me sale este error: Cita: Warning: main() [function.main]: open_basedir restriction in effect. File(/home/user10703/public_html/header.html) is not within the allowed path(s): (/opt/ferozo/suspended.page:/opt/ferozo/etc/suspen:/tmp:/opt/apache/lib/php) in /home/user10703/public_html/index.php on ...
  #1 (permalink)  
Antiguo 12/02/2008, 14:25
Avatar de Falhor  
Fecha de Ingreso: diciembre-2005
Ubicación: Buenos Aires
Mensajes: 425
Antigüedad: 18 años, 4 meses
Puntos: 5
Problema require/include

Les cuento, me sale este error:

Cita:
Warning: main() [function.main]: open_basedir restriction in effect. File(/home/user10703/public_html/header.html) is not within the allowed path(s): (/opt/ferozo/suspended.page:/opt/ferozo/etc/suspen:/tmp:/opt/apache/lib/php) in /home/user10703/public_html/index.php on line 1

Warning: main(/home/user10703/public_html/header.html) [function.main]: failed to open stream: Operation not permitted in /home/user10703/public_html/index.php on line 1

Warning: main() [function.main]: open_basedir restriction in effect. File(/home/user10703/public_html/header.html) is not within the allowed path(s): (/opt/ferozo/suspended.page:/opt/ferozo/etc/suspen:/tmp:/opt/apache/lib/php) in /home/user10703/public_html/index.php on line 1

Warning: main(/home/user10703/public_html/header.html) [function.main]: failed to open stream: Operation not permitted in /home/user10703/public_html/index.php on line 1

Fatal error: main() [function.require]: Failed opening required '/home/user10703/public_html/header.html' (include_path='.:/opt/apache/lib/php') in /home/user10703/public_html/index.php on line 1
Y fui al soporte tecnico de mi hosting y les puse el error que me aparecia y agregue:

Cita:
Ya se que es problema del codigo que yo puse pero es un error que aparece cuando uno intenta acceder a un directorio al que no tiene permisos y en este caso estoy intentando acceder a un archivo que subi yo en public_html, debe ser un error de configuracion en el php.ini
Y me respondieron:

Cita:
Le comunicamos que, como medida de seguridad, en el dia de ayer se procedio con una actualizacion que seteo
por defecto en todas las cuentas de hosting el valor de la variable de PHP "register_globals" en off. Este
cambio se llevo a cabo debido que cuando la variable register_globals esta en "On" el servidor web considera a
las variables EGPCS (Environment, GET, POST, Cookie, Server) como variables globales. Esto junto con el hecho
de que PHP no requiere la inicialización de variables significa que es muy fácil escribir código inseguro.

Enviamos aqui una URL de referencia al caso para que pueda guiarse al respecto:

http://es.php.net/es/register_globals

De todas formas desde su panel de control puede setear el valor de "register_globals" en "Off" u "On".
Probe cambiar el register_globals a on y como era de esperarse no funciono.

La linea uno no es mas que

Código PHP:
<?php require("header.html");?>
Ni siquiera llama a un archivo php asi que no se que tendra que ver el register globals.

El php.ini es asi:

Cita:
register_globals = on
disable_functions = system, shell, exec, system_exec, shell_exec, mysql_pconnect, passthru, popen, proc_open, proc_close, proc_nice, proc_terminate, proc_get_status, escapeshellarg, escapeshellcmd
sendmail_path = /opt/exim/bin/exim -t
error_reporting = E_ALL & ~E_NOTICE
upload_max_filesize = 8M
open_basedir="/home/user10703/public_html:/tmp:/opt/apache/lib/php:/opt/php5/lib/php:/opt/ferozo/etc/suspen:/opt/ferozo/suspended.page"
cgi.fix_pathinfo=1
memory_limit = 16M

[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer=/opt/Zend/lib/Optimizer-3.2.2
zend_extension_manager.optimizer_ts=/opt/Zend/lib/Optimizer_TS-3.2.2
zend_extension=/opt/ioncube/ioncube_loader_lin_4.4.so
zend_optimizer.version=3.2.2
zend_extension=/opt/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/opt/Zend/lib/ZendExtensionManager_TS.so
Pero no lo puedo modificar. Para mi el problema esta aca:

Cita:
open_basedir="/home/user10703/public_html:/tmp:/opt/apache/lib/php:/opt/php5/lib/php:/opt/
ferozo/etc/suspen:/opt/ferozo/suspended.page"
Que dicen?? Cual puede ser el problema?? Como arreglarlo sin acceso a php.ini?? Y si no hay forma que le digo a mi soporte tecnico??

Saludos.

EDITO: Bueno, justo la linea importante no entra, arreglen eso por favor. Tuve que cortarlo pero es todo la misma linea

Última edición por Falhor; 12/02/2008 a las 14:33
  #2 (permalink)  
Antiguo 12/02/2008, 15:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema require/include

El problema es claro y te lo indica PHP, no puedes incluir, o leer archivos que están dentro del path que puedes leer con PHP.

Según la configuración que esta leyendo PHP, estos son los únicos paths que tu puedes abrir:
Código:
/opt/ferozo/suspended.page
/opt/ferozo/etc/suspen
/tmp
/opt/apache/lib/php
El header.html esta dentro de un path del cual no tienes permiso entrar, y necesitas configurar tu servidor para que funcione correctamente.

Saludos.
  #3 (permalink)  
Antiguo 12/02/2008, 17:02
Avatar de Falhor  
Fecha de Ingreso: diciembre-2005
Ubicación: Buenos Aires
Mensajes: 425
Antigüedad: 18 años, 4 meses
Puntos: 5
Re: Problema require/include

Muchas gracias. Pero mira esta parte del error:
Cita:
File(/home/user10703/public_html/header.html)
Y segun el open_basedir:

Cita:
open_basedir="/home/user10703/public_html:
Es decir que se tendria que poder...

Saludos.
  #4 (permalink)  
Antiguo 13/02/2008, 21:26
Avatar de Falhor  
Fecha de Ingreso: diciembre-2005
Ubicación: Buenos Aires
Mensajes: 425
Antigüedad: 18 años, 4 meses
Puntos: 5
Re: Problema require/include

Perdonen el doble post pero necesito que me ayuden lo antes posible y esto ya esta en la pagina 3 de PHP.

Saludos.
  #5 (permalink)  
Antiguo 13/02/2008, 21:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema require/include

Probablemente falte reiniciar el servidor de Apache, ya que si te fijas la configuracion de open_basedir que esta leyendo PHP es la que no incluye el directorio de tu usuario.

Saludos.
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 23:45.