Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2007, 13:27
proalex
 
Fecha de Ingreso: diciembre-2006
Mensajes: 9
Antigüedad: 17 años, 4 meses
Puntos: 0
Pregunta Que metodo es mejor para definir la ruta base?

Buenas,
Mi problema es que mi organizacion de los ficheros es algo liosa, debido a que esta todo tan ordenado, que para acceder a un archivo 3 directorios mas arriba hacia ../../../, pero claro, cuando ademas metes includes y tal... como no uses la ruta completa al final salen 3000 errores.
Mi primera pregunta es: Cual de estos 2 metodos es mejor para obtener la ruta base en todos los archivos?
- Metodo 1:
Incluir en todos los ficheros el siguiente codigo:
Código:
<?
$ruta_add = "/alex/algo.php";
$ruta_abs = str_replace($ruta_add, "", __FILE__);
echo $ruta_abs;
?>
Asi, suponiendo de que __FILE__ diera /opt/...../alex/algo.php, al reemplazar lo ultimo me daria la ruta base de mi carpeta inicial.
Lo malo de este metodo es evidente: repetitivo codigo en 2000 ficheros que abulta espacio.
tambien me lo plantee con substr... esta bien asi o hay una forma mejor de quitarle las 2 palabras que sobran de esa ruta?
- Metodo 2:
Incluir en el .htaccess:
Código:
<FilesMatch "\.(php)$"> 
 php_value short_open_tag "Off"
 php_value auto_append_file "/opt/...../alex/config.php"
 </FilesMatch>
y que en config.php haya una variable con el valor de la ruta absoluta.
Y en este caso lo malo seria la obligacion a usar .htaccess, que muchos hosts no lo permiten, y que se incluya hasta en los ficheros no necesarios y peligrosos en algunos casos...

Muchas gracias por leer al menos :). Agradezco tanto que se me aconseje cual de los 2 usar, como optimizar el primer metodo, que seguro hay alguna forma mas sencilla... como dar alguna otra opcion para obtener la ruta base... (DOCUMENT_ROOT no funciona ni similares por la config del host).
Otra preguntilla: dado a que veo que mucha gente no tiene ese problema de las rutas... como hacen ustedes para organizar la web? escalar como maximo a 1 dir inferior?

Saludos y muchisimas gracias.
PD: Perdonen ortografia por el teclado ingles.