server_addr script_filename document_root _server php html root

php - script_filename - server_addr



Document Root PHP (4)

Sólo para confirmar, está usando:

$_SERVER["DOCUMENT_ROOT"]

lo mismo que usar: /

en HTML.

P.ej. Si el documento actual es:

folder/folder/folder/index.php

Podría usar (en HTML) para comenzar en el roort:

/somedoc.html

Y para hacer lo mismo en PHP tendría que usar:

$_SERVER["DOCUMENT_ROOT"] . "/somedoc.html";

¿Es eso correcto? ¿Hay una manera más fácil de hacerlo?


La forma más fácil de hacerlo es tener una buena estructura del sitio y escribirla como una constante.

DEFINE("BACK_ROOT","/var/www/");


Solo / refiere a la raíz de su sitio web desde la carpeta html pública. DOCUMENT_ROOT refiere a la ruta local a la carpeta en el servidor que contiene su sitio web.

Por ejemplo, tengo la configuración de EasyPHP en una máquina ...

$_SERVER["DOCUMENT_ROOT"] me da el file:///C:/Program%20Files%20(x86)/EasyPHP-5.3.9/www pero cualquier archivo al que enlace con solo / será relativo a mi carpeta www .

Si desea dar la ruta absoluta a un archivo en su servidor (desde la raíz del servidor) puede usar DOCUMENT_ROOT . si desea dar la ruta absoluta a un archivo desde la raíz de su sitio web, use solo / .


, en el lado del servidor $_SERVER[''DOCUMENT_ROOT''] es equivalente a / en el lado del cliente.

Por ejemplo: el valor de "{$_SERVER[''DOCUMENT_ROOT'']}/images/thumbnail.png" será la cadena /var/www/html/images/thumbnail.png en un servidor donde el archivo local en esa ruta puede ser alcanzado desde el lado del cliente en la url http://example.com/images/thumbnail.png

No , en otras palabras, el valor de $_SERVER[''DOCUMENT_ROOT''] no es / más bien es la ruta local del servidor a lo que el servidor muestra al cliente en example.com/

nota: $_SERVER[''DOCUMENT_ROOT''] no incluye un final /


<a href="<?php echo $_SERVER[''DOCUMENT_ROOT''].''/hello.html''; ?>">go with php</a> <br /> <a href="/hello.html">go to with html</a>

Inténtalo tú mismo y descubre que no son exactamente iguales.

$ _SERVER [''DOCUMENT_ROOT''] muestra una RUTA DE ARCHIVOS real (en mi computadora funcionando como su propio servidor, c: / wamp / www /

HTML / representa la raíz del servidor url, en mi caso, localhost /

Pero c: /wamp/www/hello.html y localhost / hello.html son de hecho el mismo archivo