ubuntuusers.de

PHP Module nachladen

Status: Ungelöst | Ubuntu-Version: Ubuntu 7.04 (Feisty Fawn)
Antworten |

judo-yannick

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Hi Leute!

Ich habe ein Problem mit meinem Webserver der auf Ubuntu 7.04 läuft. Ich habe diverse PHP Module zusätzlich installiert aber keines von diesen kann ich verwenden, da diese nicht in der php initialisiert sind.
Zum Beispiel das Tool gd. Dafür gibt es zwar einen Eintrag aber die Erweiterung wird nicht geladen also einen Eintrag

extension=gd.so


gibt es nicht.

Diesen Manuell hinzufügen bringt nichts, da die Erweiterung dann trotzdem nicht läuft!
Kann mir einer von euch da helfen???

Gruß
Yannick

bar-B-q

Anmeldungsdatum:
8. November 2005

Beiträge: 55

Schau mal bitte in deine apache-log, dort sollte stehen was für ein Problem es gibt, wenn eine Extension nicht geladen werden kann. Schätze mal das die *.so nicht im richtigen Verzeichnis ist.

judo-yannick

(Themenstarter)

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Okay also in der Apache-log habe ich nachgeguckt. Da steht kein Error von wegen Extension oder gd nicht geladen. Das Problem ist ja auch, dass die extension schon in der php.ini nicht auftaucht. Ich denke, dass eher da das Problem liegen müsste, da ja in der php.ini eigentlich diese Informationen stehen müssten. Die wird ja auch vernünftig gelesen, nur da steht halt nichts von den erweiterungen drin.

xabbuh Team-Icon

Anmeldungsdatum:
25. Mai 2006

Beiträge: 6411

Wie genau hast du die Module nachinstalliert?

bar-B-q

Anmeldungsdatum:
8. November 2005

Beiträge: 55

Du musst die extension natürlich schon in die php.ini per hand eintragen..

Dakuan

Avatar von Dakuan

Anmeldungsdatum:
2. November 2004

Beiträge: 6500

Wohnort: Hamburg

Ich kann dein Problem irgendwie nicht richtig nachvollziehen. Ich hatte damit noch nie Probleme, weder mit Apache noch mit Lighttpd.
Wie hast du das den installiert?
Ich habe einfach nur über die Paketverwaltung php5-gd installiert und nichts weiter.

Falls dann libgd2-noxpm entfernt wird, achte darauf dass libgd2-xpm als Ersatz installiert wird. Das funktioniert sogar auf einer nslu2.

judo-yannick

(Themenstarter)

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Ich habe die Module alle per Synaptic nachinstalliert.

Wie gesagt der manuelle Eintrag in die php.ini hat nicht funktioniert also

extension=gd.so

funktioniert nicht.
Aber auch alle anderen nachinstallierten Module werden nicht geladen.

Komisch ist allerdings, dass wenn ich über phpMyAdmin die PHP-Informationen anzeigen lasse es einen Extrapunkt für gd gibt...Aaber dieses kann ich wie gesagt nicht benutzen

Du musst die extension natürlich schon in die php.ini per hand eintragen..

Habe ich ja versucht, wie du oben sehen kannst, oder habe ich etwas falsch gemacht???

Falls dann libgd2-noxpm entfernt wird, achte darauf dass libgd2-xpm als Ersatz installiert wird. Das funktioniert sogar auf einer nslu2.

Also entfernt habe ich nichts! Ich verstehe also nicht so ganz, was du mir sagen willst?!

xabbuh Team-Icon

Anmeldungsdatum:
25. Mai 2006

Beiträge: 6411

Hast du den Apache denn anschließend neugestartet?

judo-yannick

(Themenstarter)

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Jap ich habe den auch neu gestartet. Habe auhc mal nen Neustart des ganzen Systems probiert, aber keine Änderungen am Problem. ☹

bar-B-q

Anmeldungsdatum:
8. November 2005

Beiträge: 55

Wie gesagt, php module in den richtigen ordner kopieren/installieren, extension=dername.so in die php.ini eintragen, apache2ctl restart eintippen, und dann mal ne phpinfo(); machen und gucken. Wenn das Modul nicht geladen ist, muss etwas in der apache error log stehen.

judo-yannick

(Themenstarter)

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Welches ist denn der richtige Ordner?

comm_a_nder

Avatar von comm_a_nder

Anmeldungsdatum:
5. Februar 2006

Beiträge: 2533

Wohnort: Dresden

Der richtige Ordner ist heutzutage /etc/php5/conf.d. Die dort liegenden Files werden sowohl in der php.ini für das Kommandozeilen-php als auch in die php.ini für Apache inkludiert.

bar-B-q

Anmeldungsdatum:
8. November 2005

Beiträge: 55

comm_a_nder hat geschrieben:

Der richtige Ordner ist heutzutage /etc/php5/conf.d. Die dort liegenden Files werden sowohl in der php.ini für das Kommandozeilen-php als auch in die php.ini für Apache inkludiert.

ich meinte aber den Ordner für die extensions.
Wo liegen bei dir deine .so Dateien ? Und Poste mal bei http://rafb.net/paste deine php.ini und gib uns hier den Link.

comm_a_nder

Avatar von comm_a_nder

Anmeldungsdatum:
5. Februar 2006

Beiträge: 2533

Wohnort: Dresden

Achso, dann hab ich Euch mistverstanden. Um PHP zu sagen, wo man seine extensions findet, muss man in der php.ini extension_dir richtig setzen, per Default (ist aber ein Debian Etch) ist es bei mir auf /usr/lib/php5/20060613+lfs gesetzt, das passiert afaik beim Kompilieren das Paketes. Ich würde selbstkompilierte Libs zum Beispiel nach /usr/local/lib/php5 kopieren und die Variable extension_dir entsprechend anpassen.

judo-yannick

(Themenstarter)

Anmeldungsdatum:
12. Januar 2008

Beiträge: 92

Hallo mal wieder!!!

Ich habe jetzt die extension_dir Anweisung auf das Verzeichnis gesetzt, wo die .so dateien liegen. Diese liegen, wie comm_a_nder schrieb in /usr/lib/php5/20060613+lfs. Dieser Wert war nicht gesetzt danach den Apache2 neu gestartet und hier ist der Auszug aus error.log dafür:

[Sun Jan 27 17:40:59 2008] [notice] SIGHUP received.  Attempting to restart
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
PHP Warning:  Module 'json' already loaded in Unknown on line 0
PHP Warning:  Module 'gd' already loaded in Unknown on line 0
PHP Warning:  Module 'tidy' already loaded in Unknown on line 0
[Sun Jan 27 17:40:59 2008] [notice] Apache/2.2.3 (Ubuntu) PHP/5.2.1 configured -- resuming normal operations
[Sun Jan 27 17:42:57 2008] [notice] caught SIGTERM, shutting down
PHP Warning:  Module 'json' already loaded in Unknown on line 0
PHP Warning:  Module 'gd' already loaded in Unknown on line 0
PHP Warning:  Module 'tidy' already loaded in Unknown on line 0
[Sun Jan 27 17:44:44 2008] [notice] Apache/2.2.3 (Ubuntu) PHP/5.2.1 configured -- resuming normal operations


(Hab den Server danach nochmal neu gestartet, wie ihr sehen könnt)

Die extensions funktionieren allerdings immer noch nicht, obwohl sie eingebunden sein müssten. Obwohl ich nicht weiß, wo diese bereits eingebunden werden. In welchen Dateien werden denn noch Konfigurationseinstellungen für PHP geschrieben, da diese ja offensichtlich schon gelesen wurden und daher gd, etc. schon geladen sind. Ich nehme an das das die Dateien aus /etc/php5/apache2/conf.d sind, da dort für jedes modul eine .ini Datei mit dem Befehl extension=gd.so oder ähnliches liegt. Ist der Eintrag in der php.ini damit doch überflüssig?

Meine php.ini

Im conf.d Ordner von Apache liegt übrigens nur eine Datei die eine Zeichenkodierung hinzufügt ( utf-8 )

Antworten |