Autor Zpráva
MyFlower
Profil
Ahoj,

mám testovací server (Debian linux) a na něm několik subdomén. Jam mám zařídit, aby se mi při
<?php
require_once("/test.php");
?>

nevolal soubor /test.php, ale /var/www/subdomena1/test.php?

Zkoušel jsem do include_path v php.ini přidat :/var/www/subdomena1/, ale nepomohlo to, stálé se dozvídám toto:
Fatal error: require_once() [function.require]: Failed opening required '/test.php' (include_path='.:/usr/share/php:/var/www:/var/www/subdomena1/') in /var/www/subdomena1/index.php on line 2


Předem díky,
MyFlower
Majkl578
Profil
Pochybuji, že by to šlo, / je root na unixovém systému a nic jiného.
Davex
Profil
Zkusil bych to zařídit takto:
<?php
require_once("./test.php");
?>
MyFlower
Profil
Davex:
Tak tohle mi samozřejmě došlo, ale já potřebuji takto volat i soubory z podadresářů - např z ./addr/addr2/addr3 potřebuji zavolat /test.php a dostat se jen na úroveň ./ a ne až na root celého disku...

Jak se například tento problém řeší u nějakého hostingu? Tam přeci každý uživatel nemá vlastní virtuální server nebo něco podobného a pokud zavolám /soubor, nepřistupuji k rootu celého systému, ale pouze svého přiřazeného adresáře...
Majkl578
Profil
Ideální je, když ten systém nabízí např. konstantu, která obsahuje adresu složky rootu. Tedy něco jako const APP_DIR = __DIR__;.
Davex
Profil
MyFlower:
Jak se například tento problém řeší u nějakého hostingu? Tam přeci každý uživatel nemá vlastní virtuální server nebo něco podobného a pokud zavolám /soubor, nepřistupuji k rootu celého systému, ale pouze svého přiřazeného adresáře...
Pokud to takto u nějakého hostingu funguje, tak je to nějaká specialitka, která nebývá obvyklá. Cestu k rootu webu si musí aplikace zjistit sama, jak píše Majkl578.

Funkční řešení je třeba ve vláknech:
- Nefunkční cesta v include
- problem s include
MyFlower
Profil
Díky všem, holt zůstanu u starého dobrého ../, ../../ apod. :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: