Info

De root van het PHP-document vinden

De root van het PHP-document vinden

De root van het PHP-document is de map waarin een PHP-script wordt uitgevoerd. Bij het installeren van een script moeten webontwikkelaars vaak de document root kennen. Hoewel veel pagina's met PHP-scripts op een Apache-server worden uitgevoerd, worden sommige pagina's onder Microsoft IIS op Windows uitgevoerd. Apache bevat een omgevingsvariabele genaamd DOCUMENT_ROOT, maar IIS niet. Als gevolg hiervan zijn er twee methoden voor het lokaliseren van de PHP-document root.

Het vinden van de PHP Document Root onder Apache

In plaats van technische ondersteuning per e-mail voor de document root te e-mailen en te wachten tot iemand reageert, kunt u een eenvoudig PHP-script met getenv () gebruiken, dat een snelkoppeling op Apache-servers naar de document root biedt.

Deze paar regels code retourneren de document root.

De root van het PHP-document vinden onder IIS

Microsoft's Internet Information Services werd geïntroduceerd met Windows NT 3.5.1 en is sindsdien opgenomen in de meeste Windows-releases, inclusief Windows Server 2016 en Windows 10. Het biedt geen snelkoppeling naar de document root.

Begin met deze code om de naam van het script dat momenteel wordt uitgevoerd in IIS te vinden:

print getenv ("SCRIPT_NAME");

die een resultaat oplevert vergelijkbaar met:

/product/description/index.php

dat is het volledige pad van het script. U wilt niet het volledige pad, alleen de naam van het bestand voor SCRIPT_NAME. Gebruik om het te krijgen:

print realpath (basename (getenv ("SCRIPT_NAME")));

die een resultaat in deze indeling retourneert:

/usr/local/apache/share/htdocs/product/description/index.php

Om de code die verwijst naar het site-relatieve bestand te verwijderen en bij de document root aan te komen, gebruikt u de volgende code aan het begin van elk script dat de document root moet kennen.

$ Localpath = getenv ( "SCRIPT_NAME");

$ Absolutepath = realpath ($ localPath);

// repareer de Windows-schuine strepen

$ Absolutepath = str_replace ( "", "/", $ absolutepath);

$ Docroot = substr ($ absolutepath, 0, strpos ($ absolutepath,

$ Localpath));

// een voorbeeld van gebruik

include ($ docroot "/ includes / config.php".);

Deze methode, hoewel complexer, werkt op zowel IIS- als Apache-servers.

Bekijk de video: How to Find the Document Root of your Website (November 2020).