ugrás a tartalomhoz

PHP - phar archive

inf3rno · 2014. Május. 11. (V), 03.43
Ha jól nézem a PHAR kb 1.5x lassabb, mint a normál PHP, viszont sok előnye van ezzel szemben:
- egyszerűbb másolni, telepíteni
- még véletlenül sem keverednek az adatok, az alkalmazás kódjával, így könnyebb róluk backup-ot készíteni, ami szintén lehet phar formátumban
- van lehetőség titkosításra és digitális aláírásra, elvileg talán még a sérült fájlokat is kiszűri, bár nem tudom, hogy checksum-ot mennyire néz automatikusan

Érdekelne, hogy mi a tapasztalatotok vele, illetve a vélemények is érdekelnek. (Csak most kezdtem el nézni, hogy miket tud.)
 
1

WAR

janoszen · 2014. Május. 11. (V), 11.42
A Java-s vilag WAR fajljat szerettek volna emulalni vele, de csak korlatozottan sikerult. Manapsag leginkabb arra hasznaljak, hogy CLI alkalmazasokat csomagoljanak egybe. Weben nem nagyon hasznalja senki.
2

Mi az, ami miatt

inf3rno · 2014. Május. 11. (V), 13.43
Mi az, ami miatt "korlátozottan sikerült"?
3

Tortenelem

janoszen · 2014. Május. 11. (V), 14.07
Tortelem. A PHP-s tarsadalom maskepp szocializalodott, nincsenek application szerverek.
4

Okés, kipróbálom, kíváncsi

inf3rno · 2014. Május. 11. (V), 14.17
Okés, kipróbálom, kíváncsi vagyok, hogy mit tud webes környezetben. Azt írják, hogy van külön phar cache meg van apc támogatás is hozzá, és hogy közel ugyanolyan gyors, mint a sima php.

Úgy néz ki, hogy a data integrity biztonságban van: http://lxr.php.net/xref/PHP_TRUNK/ext/phar/util.c#1794
legalábbis ha jól olvasom, akkor a teljes archívum alapján állít elő egy sha1 checksum-ot. Ezen kívül van még crc32 checksum minden egyes fájlra, biztos, ami biztos. Viszont ezt nem használják szignálásra. (Nem tudom, hogy ez mennyire akadályozza meg a fájlok módosítását, de gondolom nem egyszerű úgy módosítani a fájlokat, hogy a sha1 checksum és a crc32 checksum-ok is tök egyformák maradjanak, és a fájlok mérete se változzon.)

Titkosítani nem lehet a fájlokat, legalábbis úgy nem, hogy includolhatóak maradjanak. Igaz, hogy zip-et használ, de a jelszavas zip-ekre nincs felkészülve a phar extension, szóval annyit lehet tenni ezügyben, hogy a phar fájlok fölé lehet tenni még egy titkosítási réteget. Ez viszont nem muszáj, hogy manuálisan menjen, simán lehet pl ssl-t használni és https-el feltölteni a fájlokat. Magán a szerveren nem igazán lehet megvédeni a kódot az olvasástól, egy normál compiler esetében, de ha nincs fájlrendszer hozzáférése a támadónak, akkor ez nem probléma.

Imho összességében a phar megfelel deploy célokra, de még hátra vannak a sebesség tesztek...