Autor Zpráva
Tomtomas
Profil
Chci poprosit o radu s instalováním knihovny PEAR na účtu sdíleného webhostingu.

Chci využít např. Cache_Lite, jenž potřebuje ke svému chodu knihovnu PEAR. Tu ale potřebuji nainstalovat v rámci svého účtu. Stále ale nevím jak = celkově tak nějak tápu.

Relativně pochopitelný návod je např. na pear.php.net/manual/en/installation.shared.php v části "The traditional way of installing a local copy of PEAR through ftp". Bohužel ani pomocí Google jsem nepochopil, jak mám např. zjistit verzi CLI v PHP (výstup z uvedeného skriptu mi neukázal vůbec nic). Také nějak tápu v posledním odstavci. Jestli to chápu dobře, tak v každém skriptu, využívajícím Cache_Lite, potažmo PEAR, budu muset fcí ini_set nastavovat hodnotu pro include_path?

Doufám, že se najde někdo, kdo tuto oblast chápe nebo již PEAR na webhostingu instaloval. Předem moc děkuji za pomoc.
xixli
Profil
PEAR je pokiaľ viem iba balík php skriptov, ktoré nejak ani nepotrebujú inštalovať, len je potrebné, aby sa vedeli súbory PEAR-u do seba vložiť.

Funkciu ini_set nie je nutné používať, ale dá sa meniť v php.ini (tam asi nebude prístup), httpd.conf (tiež), .htaccess alebo v php skripte cez ini_set (Táto funkcia môže byť zakázaná, aj keď často bezdôvodne.).

Cez .htaccess sa to dá takto:
php_value include_path .;./relative/path/to/pear/on/server
xixli
Profil
Ešte ma napadla možnosť to meniť v php skriptoch cez set_include_path(string path) - v podstate je to alias k ini_set pre include_path direktívu.
Tomtomas
Profil
Díky za odpověď. I díky ní se mě snad jakž takž podařilo pochopit, o co vlastně jde. Nějak se mě zdařilo rozchodit kešovací php skript. Bohužel nedělá to hlavní, neukládá soubory do cache, resp. pokud ano, tak ne tam, kam bych čekal.

Do jedné složky jsem dal soubor Lite.php (+složky z balíčku Cache_Lite), soubor pear.php (+složky z balíčku Pear) a samotný skript na vytvoření cache. Ve skriptu jsem na začátek dal následující.
ini_set (

'include_path',
'/cesta k adresari se soubory Lite.php, Pear.php a MUJ_SKRIPT.php/'.
PATH_SEPARATOR.
ini_get('include_path'));

kde cesta = např. /hosting/mujucet/www/test-cache/.

Přičemž ani jeden skript (jeden vlastní a pár odzkoušených z inetu) se po znovunačtení nenačítal z cache. Mimo jiné jsem třeba zkusil např. tento cache skript a výsledek je vždy podobný:
- stranka vytvorena za: 0.00323 s
- vytvorena v: 22:10:48, 10.01.06
- pouziva GZip: ne
- data z cache: ne.

Jak jsem pochopil ze souboru Lite.php, měla by se cache ukládat do složky "tmp" (hodnota /tmp/) ve stejném adresáři, jako je Lite.php a Pear.php. Tam se ale jak vidno nic neukládá. Složku tmp jsem vytvořil a atributy CHMOD 777.

Pokud mě snad někdo trkne, kde je chyba, budu mu vděčen.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0