• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

zip Funktionalität in PHP aktivieren

xeniii

Newbie
Hi,
ich hab einen Vserver auf dem opensuse 10.1 mit php5 läuft. Leider ist die zip Funktionalität nicht aktiviert ich brauche sie aber um mit php Dateien zu entpacken. Ich hab versucht die aktuelle php5 Version mit --enable-zip zu compilieren aber es kommt ein Fehler bei ./configure. Im yast hab ich geschaut da gibts keine php5-zip extension. Ich habe gelesen das es mit pecl install zip geht aber er kennt pecl nicht.

Meine Frage also wie kann ich (am einfachsten) die Zip Funktionalität in php aktivieren?

Phpinfo: http://img228.imageshack.us/my.php?image=phpinfoqx5.jpg
 
OP
X

xeniii

Newbie
Nein, natürlich nicht :)

Ich hab genau die Parameter wie in phpinfo stehen angegeben, sowohl mit --enable-zip als auch ohne kommt der Fehler:
http://img206.imageshack.us/my.php?image=fehlergk8.jpg

Ich hab gelesen das man flex installieren muss bei suse, das hab ich gemacht geht aber trotzdem nicht.
 

Grothesk

Ultimate Guru
Eigentlich eine eindeutige Meldung.
gcc ist nicht installiert.

Bitte für Konsolenoutput keine Screenshots machen sondern die Meldungen hier reinkopieren und mit code-Tags versehen.
 

nbkr

Guru
Die Fehlermeldung sagt, dass dir ein C-Compiler fehlt. Wenn Du den installiert hast, werden vermutlich noch andere Meldungen über fehlende Bibliotheken kommen. PHP hängt in der Hinsicht von relativ viel ab.

Über in RPM würde das viel einfacher gehen, leider habe ich kein SuSE da um nach dem Paket zu suchen. Packman kann da evtl. helfen.
 
OP
X

xeniii

Newbie
Was muss ich da dann in yast alles installieren?

Ich hab php5 in yast gefunden, ich hab nur nicht rausgekriegt ob ich dann da irgendwie die Parameter ändern kann damit die dann beim update übernommen werden sprich das ich --enable-zip noch angeben kann.
 

nbkr

Guru
PHP wird üblicherweise in mehr als einem RPM geliefert. So gibt es Pakete für die mysql-Unterstütztung von php, für ftp-Unterstützung usw. Sowas sollte es auch für das ZIP-Modul von PHP geben. Wenn Du das passende Paket installierst und den Apache anschließend neu startest hat ein PHP Zip-Funktionaltiät.

BTW: Evtl. war das sogar schon eingebaut nur nicht installiert. Schau mal in der php.ini nach ob das evtl auskommentiert ist.
 
OP
X

xeniii

Newbie
Also in der php.ini hab ich gesucht da is kein Eintrag mit zip.

Ich hab was gefunden wegen php extension, da steht allerdings oben drüber opensuse 10.2 funktioniert das trotzdem mit opensuse 10.1?
http://www.novell.com/products/linuxpackages/opensuse/php5-zip.html
 

nbkr

Guru
Vermutlich ist PHP bei 10.2 etwas neuer, weshalb das Paket nicht funktionieren könnte. Das sollte sich dann aber auch für 10.1 finden lassen. Schaumal das Du im YaST die richtigen Installationsquellen aktiviert hast.
 

enials

Newbie
Hi, habe das mal sehr interessiert mit verfolgt, aber leider nur bahnhof verstanden.

Also, ich schildere mal mein Problem.

Habe nen Power Server S von Strato, habe den nun platt gemacht und komplett neu mit Suse 10.3+Plesk 8.4
naja, und halt der rest so wie PHP5 etc..

so nun mein problem, ich habe für n paar kumpels nen Trackmania Server gestarte, das ganze läuft auch toll nur brauchen die zum einstellen ein Prog namens Remote CP4 ok.. gesagt getan.. klappt auch.. bis auf das Uploaden von dateien, da kommt dann diese fehler meldung.

Code:
[PHP Warning] require_once(./includes/objects/ZipArchive.class.php): failed to open stream: No such file or directory on line 19 in file /srv/www/vhosts/beispiel.de/httpdocs/tmnf/includes/core.functions.php Fatal error: require_once(): Failed opening required './includes/objects/ZipArchive.class.php' (include_path='.:.:/usr/share/php5:/usr/share/php5/PEAR') in /srv/www/vhosts/beispiel.de/httpdocs/tmnf/includes/core.functions.php on line 19

habe mal die url geändert, um evtl noch offene sicherheitslücken nicht tor und tür zu öffnen ;)

so, habe gegoogelt.. habe dann festgestellt.. mir soll das .zip fehlen.. is ja toll.. dann gehe ich auf php.net und zwar auf diesen link : http://de3.php.net/manual/de/zip.installation.php

so.. da steht irgendwas von..
Ab PHP 5.2.0
Linux systems
Un diese Funktionen nutzen zu können müssen sie PHP mit der Option --enable-zip übersetzen.

isch ja doll.. und was mach ich damit nun ? wenn ich per root und putty aufn server gehen und das eingebe kommt ne ellen lange liste mit commando befehlen aber mehr nicht, also mit commandobefehlen meine ich halt, das er anzeigt was man alles eingeben kann im falle von php --etc -usw, aber halt keine fehlermeldung oder sonstiges. scheint mir so als ob er mir sagen will daß das nicht geht. oder ich mach etwas falsch. ich gebe halt ein "php --enable-zip"
ist doch soweit richtig oder ?

so dann habe ich mal weiter geguckert und im hauptverzeichnis nen ordner namens "etc" gefunden, dort drinne verbirgt sich dann der ordner "php5" so.. da drinn dann sind 4 ordner namens :

"apache2"
"cli"
"conf.d"
"fastcgi"


so alle ordner beinhalten eine php.ini bis auf conf.d da is keine drinne.
nun ja, dann habe ich mal in der fastcgi die php.ini geöffnet per vi konsole und habe dort das hier entdeckt.

zlib.output_compression = Off
;zlib.output_compression_level = -1


danach kommt noch n ellenlanger kommentar der ausgeklammert ist wo steht "You cannot specify additional output handlers if zlib.output_compression is activated here. This setting does the same as output_handler but in a different order."


da drunter kommt dann

;zlib.output_handler =

so, hat nun irgendeiner ne idee wie ich ziemlich reibungslos die zip funktion aktivieren kann ? also gzip funkst ja auch, und das entpacken von zip dateien die ich per wget mir hole geht auch, deswegen scheck ich nicht ganz wieso das nicht geht.

Irgendeine idee ?

Mfg

enials
 

nbkr

Guru
Ui is der Thread alt. Egal, du brauchst PHP eigentlich nicht selbst zu kompilieren. Die aktuellen Distritubtionen bringen PHP inkl. aller nur denkbaren Module mit. Such einfach mal in der Paketverwaltung deiner Distribution. Den zlib Outputschalter kannst Du vergessen, der hat mit dem Entpacken von Zipfiles per PHP nichts zu tun.
 
Oben