Markus: Linux, Apache, PHP, mod_php erforderlich?

Hallo,

verzweifelt versuchte ich gestern PHP auf Apache 2.0.52 zu installieren, wobei die PHP-Datei immer zum Download angeboten wurde. Jegliche Lösungsansätze von Google halfen nichts, da im Endeffekt gar nicht der Apache schuld war, sondern mir der Cache von Mozilla offensichtlich einen Streich spielte.
Natürlich habe ich inzwischen dutzende Einstellungen in der php.ini und in den Apache-Konfigurationsdateien vorgenommen, da ich ja nicht wusste, wo der Fehler lag. mod_php habe ich auch installiert, aber hätte ich das überhaupt müssen? Natürlich könnte ich es jetzt wieder deinstallieren und schauen was passiert, aber ich würde es doch bevorzugen, wenn mich jemand diesbezüglich aufklären könnte.

Markus.

--
http://www.apostrophitis.at
STANDAR_D_  - ist das wirklich so schwer?
  1. Moin!

    mod_php habe ich auch installiert, aber hätte ich das überhaupt müssen?

    Prinzipiell kann php als Modul oder CGI ausgeführt werden. Für welche Variante hast Du Dich entschieden?
    Um mod_php loszuwerden genügt es die Einträge aus der Apache-Konfiguration zu entfernen.
    Eine Übersicht über die von getroffenen Einstellungen kannst Du am Prompt mit

    wget "php" /etc/httpd.conf

    erhalten.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    P.S.
    Endlich: Spamer wurde wegen Betrugs und Titelmissbrauchs verurteilt

    1. Hallo,

      Prinzipiell kann php als Modul oder CGI ausgeführt werden. Für welche Variante hast Du Dich entschieden?

      Keine Ahnung. Ich habe die erforderlichen Einträge in der commonapache2.conf gemacht, sowie LoadModule php_module    modules/libphp4.so in der apache2.conf eingetragen.

      Um mod_php loszuwerden genügt es die Einträge aus der Apache-Konfiguration zu entfernen.

      Welche Einträge? Ich habe es mal an dem obrigen Eintrag ausprobiert, wodurch die Datei wieder zum Download angeboten wird.

      Eine Übersicht über die von getroffenen Einstellungen kannst Du am Prompt mit

      wget "php" /etc/httpd.conf

      Der Pfad ist zwar bei mir etwas anders, aber bei keiner der beiden Konfigurationsdateien bekomme ich irgendwelche Ergebnisse geliefert.

      Resolving ...php failed: Name or service not known
      Markus.

      --
      http://www.apostrophitis.at
      STANDAR_D_  - ist das wirklich so schwer?
      1. Moin!

        Hallo,

        Prinzipiell kann php als Modul oder CGI ausgeführt werden. Für welche Variante hast Du Dich entschieden?

        Keine Ahnung. Ich habe die erforderlichen Einträge in der commonapache2.conf gemacht, sowie LoadModule php_module    modules/libphp4.so in der apache2.conf eingetragen.

        Du hattest es als Modul...

        Die Konfiguration als CGI:

        (Übersetzt von http://de3.php.net/security.cgi-bin

        Installiere PHP als CGI binary (z.B. in /usr/local/bin/php)
        (komiliere mit --enable-force-cgi-redirect)

        Erstelle einen Link im cgi-bin Verzeichnis um auf php-cgi zugreifen zu können:
        ln /usr/local/bin/php php /usr/local/apache/cgi-bin

        Bearbeite Deine httpd.conf:

        AddHandler php4-script .php
        Action php4-script /cgi-bin/php

        Zuerst solltest Du aber wissen, warum Du was willst. Du kannst auch beide Varianten verwenden:

        AddHandler php4-script .sphp
        Action php4-script /cgi-bin/php

        Verwende in dem Fall die Dateiendung 'sphp' für PHP als CGI...

        Eine Übersicht über die von getroffenen Einstellungen kannst Du am Prompt mit

        wget "php" /etc/httpd.conf

        Pardon!

        grep "php" /etc/httpd.conf

        ist der korrekte Filter. Den Pfad musst Du natürlich anpassen.

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix®

        P.S.
        Endlich: Spamer wurde wegen Betrugs und Titelmissbrauchs verurteilt

        1. Hallo,

          danke, aber ich habe jetzt doch ein großes Problem. phpmyadmin funktioniert nie, und ich weiß nicht, wo das Problem ist.
          Ich bekomme stets die Meldung:
          Cannot load mysql extension. Please check your PHP configuration. - Documentation

          Die Erklärung dazu ist auch nur ein schlechter Witz:
          This extension may be part of the PHP distribution (compiled-in), otherwise it needs to be loaded dynamically. Its name is probably mysql.so or php_mysql.dll. phpMyAdmin tried to load the extension but failed.

          Damit kann man absolut Null anfangen. Ein mysql.so habe ich in dem php/extension-Verzeichnis nicht. Die einzige mysql.so befindet sich in einem Perl-Verzeichnis, die aber nichts mit php zu tun haben kann.
          Ich versuche gerade php und mod_php neu zu kompilieren, und zwar mit expliziter Angabe von mysql und php -berkdb in make.conf.
          Ich glaube zwar nicht, dass es hilft, aber ein Versuch ist es zumindest wert.

          Markus.

          --
          http://www.apostrophitis.at
          STANDAR_D_  - ist das wirklich so schwer?
          [image:http://signatur.pithax.net/gentoo.jpg
          1. Moin!

            Cannot load mysql extension. Please check your PHP configuration. - Documentation

            Du hast nicht zufällig PHP 5 installiert? Da muss man meines Wissens statt mysqli mysql manuell einbinden, also stets neu kompilieren. Das klingt dann aber ganz anders, als "plötzlich geht nicht mehr, ich habe gar nichts gemacht". Wurde der Server nachts neu gestartet? dann lädt er auch die Module, also ggf. PHP neu, liest die PHP.conf oder ini und lädt auch die PHP-Extensions...

            lies mal hier: http://www.kofler.cc/forum/forumthread.php?rootID=3571#3571

            MFFG (Mit freundlich- friedfertigem Grinsen)

            fastix®

            --
            Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
            1. Hallo,

              gerade deswegen habe ich nur PHP4 verwendet, da ichz über dieses Gewurschtel schon bescheit wusste.
              Nun habe ich bei den USE-Flags 2 Flags abgezogen, und nun funktioniert nicht mal mehr PHP. Übrigens habe ich offensichtlich kein mod_php verwendet, da man für mod_php in /etc/conf.d/apache2 die Option APACHE2_OPTS="-D PHP4" setzen muss.
              Ich versuche gerade nur das "berkdb"-Flag nicht zu setzen, um beobachten zu können, wie sich PHP, v.a. phpmyadmin und mysql nun verhält.
              Ich las, dass bei jemanden nur die Reinstallation von mod_php half, was es aber bei mir nicht tat.

              Markus.

              --
              http://www.apostrophitis.at
              STANDAR_D_  - ist das wirklich so schwer?
              1. echo $begrüßung;

                Nun habe ich bei den USE-Flags 2 Flags abgezogen, und nun funktioniert nicht mal mehr PHP.

                Warum sagst du nicht gleich, dass du Gentoo verwendest?

                Bekommst du es installiert, wenn du gemäß dieser Dokumentation vorgehst? (Insbesondere wäre der PHP Upgrading Guide empfehlenswert, auch wenn du eine Neuinstallation und kein Upgrade machen möchtest.)

                echo "$verabschiedung $name";

                1. Hi!

                  Nun habe ich bei den USE-Flags 2 Flags abgezogen, und nun funktioniert nicht mal mehr PHP.

                  Warum sagst du nicht gleich, dass du Gentoo verwendest?

                  Das sieht man doch an dem Bild in der Signatur ;-)

                  Grüße,
                  Fabian St.

                2. Hallo,

                  ich werde es gleich ausprobieren, aber zur Zeit aktualisiere ich Apache. Irgendwie scheint der Apache versaut zu sein, was man dadurch erkennt, dass das Einbinden des php-Moduls "LoadModule php4_module modules/libphp4.so" den Apache nicht mehr starten lässt.
                  Beim Ausführen von /etc/init.d/apache2 start  erhält man folgendes:

                  Cannot load /usr/lib/apache2/modules/libphp4.so into the server. /usr/lib/apache2/modules/libphp4.so: undefined symbol: ap_signal.

                  Ich versteh das nicht. Ich habe alle USE-Flags wieder hergestellt, mod_php und php neu kompiliert, aber Apache lässt sich mit dieser Zeile nicht mehr starten.

                  Markus.

                  --
                  http://www.apostrophitis.at
                  STANDAR_D_  - ist das wirklich so schwer?
                  1. ...ich frage mich außerdem, was dieser Mist soll, dass die Konfigurationsdateien des Apache plötzlich wieder in _einer_ Datei sind! Wird jetzt nach jedem ebuild gewechselt, oder welchen Grund hat dieses hin und her?

                    Markus.

                    --
                    http://www.apostrophitis.at
                    STANDAR_D_  - ist das wirklich so schwer?
                    1. echo $begrüßung;

                      ...ich frage mich außerdem, was dieser Mist soll, dass die Konfigurationsdateien des Apache plötzlich wieder in _einer_ Datei sind! Wird jetzt nach jedem ebuild gewechselt, oder welchen Grund hat dieses hin und her?

                      Jedes Mal bestimmt nicht und es gab auch nur ein "hin", kein "hin und her". Du solltest als Gentoo-User den montäglichen Newsletter beachten[*], dann wäre dir sicher auch nicht entgangen, dass und warum es eine Änderung bei den Apache-Konfiguration gab: Upgrading Apache

                      echo "$verabschiedung $name";

                      [*] Gerade bei einem System das sich ständig ändert, halte ich das für wichtig. Ebenso wichtig erachte ich, vor Updates von produktiv genutzten Paketen das ChangeLog zu lesen.

                      1. Hallo,

                        montäglichen Newsletter beachten [...]

                        Von diesem Newsletter wusste ich gar nichts, aber zumindest weiß ich jetzt, was ich bei Gelegenheit tun sollte.
                        Offensichtlich schien mit diesem Apache wirklich irgend etwas nicht zu stimmen. Ein durch ein Modul plötzlich auftretender Apache 1.3.3-r10 (oder so ähnlich) neben meinem Apache2 kam mir schon sehr seltsam vor.
                        Bin mal gespannt, ob PHP jetzt wieder funktioniert, nachdem ich alles inkl. Apache deinstalliert und alle Config-Files gelöscht habe.

                        Markus.

                        --
                        http://www.apostrophitis.at
                        STANDAR_D_  - ist das wirklich so schwer?
                        »» echo $begrüßung;
                        >
                        > > ...ich frage mich außerdem, was dieser Mist soll, dass die Konfigurationsdateien des Apache plötzlich wieder in _einer_ Datei sind! Wird jetzt nach jedem ebuild gewechselt, oder welchen Grund hat dieses hin und her?
                        >
                        1. Wie von Geisterhand funktioniert plötzlich PHP, und auch phpmyadmin, was eigentlich mein ursprüngliches Problem war.

                          Markus.

                          --
                          http://www.apostrophitis.at
                          STANDAR_D_  - ist das wirklich so schwer?
                  2. Hi!

                    ich werde es gleich ausprobieren, aber zur Zeit aktualisiere ich Apache. Irgendwie scheint der Apache versaut zu sein, was man dadurch erkennt, dass das Einbinden des php-Moduls "LoadModule php4_module modules/libphp4.so" den Apache nicht mehr starten lässt.
                    Beim Ausführen von /etc/init.d/apache2 start  erhält man folgendes:

                    Cannot load /usr/lib/apache2/modules/libphp4.so into the server. /usr/lib/apache2/modules/libphp4.so: undefined symbol: ap_signal.

                    Ich versteh das nicht. Ich habe alle USE-Flags wieder hergestellt, mod_php und php neu kompiliert, aber Apache lässt sich mit dieser Zeile nicht mehr starten.

                    Probiere doch mal ein »revdep-rebuild« (enthalten im Gentoolkit) und emerge dann Apache und PHP erneut.

                    Grüße,
                    Fabian St.

                    1. Hallo,

                      Probiere doch mal ein »revdep-rebuild« (enthalten im Gentoolkit) und emerge dann Apache und PHP erneut.

                      Ja, das habe ich gerade getan. Leider hat es mir noch nie etwas gebracht. revdep-rebuild will immer irgendwelche Dinge wie Firefox, Opera, usw,.. neu  installieren, die ich entweder nie benutzt habe (zb EMacs), oder ganz normal funktionieren, wobei manche Programme auf meinem System gar nicht vorhanden sind, oder noch nie waren.

                      Markus.

                      --
                      http://www.apostrophitis.at
                      STANDAR_D_  - ist das wirklich so schwer?