Christoph Schnauß: PHP-Installation

Hi Forum :-)
zu meiner Frage gibts im Archiv zwar bereits ein paar Aussagen, die sich weitestgehend mit den verschiedenen Hinweisen in Handbüchern und Tutorials decken. Ich habs alles fleißig studiert, aber irgendwas klappt halt immer noch nicht, deshalb hilft mir ein Rückverwies aufs Archiv (hallo Linksetzer *g*) nicht weiter.
Mir geht es darum, daß ich unter Win98 und mit dem Apache (1.3.12) auch PHP verwenden möchte. Der Apache läuft problemlos, gibt keine Fehlermeldungen aus. Ich habe mir das jüngste PHP-Download-Angebot geholt, also PHP 4.0.3.

Folgendes steht in der httpd.conf für den Apache:

ScriptAlias /php3/ "D:/Php/"
ScriptAlias /php/ "D:/Php/"

AddType application/x-httpd-php3 .phtml .php3 .php
AddType application/x-httpd-php3-source .phps
AddType application/x-httpd-php .phtml .php3 .php
AddType application/x-httpd-php-source .phps

AddHandler cgi-script .php3
AddHandler cgi-script .php
AddHandler server-parsed .php3
AddHandler server-parsed .php

AddType text/html .php3
AddType text/html .php

Action application/x-httpd-php3 "/php3/php.exe"
Action application/x-httpd-php "/php/php.exe"

Selbstverständlich gibt es die entsprechenden Dateien und Verzeichnisse, und die Bibliotheken (*.dll's) sind im windows/system-Verzeichnis vorhanden. Ich habe viele Kombinationen durchgespielt, bei denen immer mal die eine oder andere Eintragung auskommentiert wurde, aber es gibt eigentlich keine Unterschiede. In den Apache-log-Dateien gibt es keine Fehler. Außerdem bekomme ich im Task-Manager gezeigt, daß PHP aktiv ist.

So, und nun das Problem: Wenn ich Apache nicht starte. bekomme ich bei Seiten mit PHP-Code im Browser entweder den Quellcode angezeigt oder eine Fehlermeldung oder auch gar nichts (außer HTML). Wenn ich aber Apache starte, wird offenbar TEILWEISE PHP-Code abgearbeitet bzw. ignoriert ...

erstes Beispiel: in verschiedenen Tutorials wird gesagt, man soll zur Probe mal eine Datei

<html><head><title>PHP-Beispiel</title></head>
    <body>
        <?php echo "Hallo, ich bin ein PHP-Skript!"; ?>
    </body>
</html>

erstellen. Wenn ich diese Datei aufrufe, kriege ich im Browser gar nichts zu sehen  -  ist ja auch kein HTML-Code abzuarbeiten im body.Es hilft auch nix, die Datei "beispiel.php" statt "beispiel.htm" zu nennen.

zweites Beispiel: ich habe mir phpMyAdmin geholt, da gibt es eine Reihe mehr oder weniger fertiger PHP3-Files. Wenn ich das entsprechend der Anleitung konfiguriere und dann die dort vorhandene Index-Datei (index.php3) aufrufe, bekomme ich teilweise den PHP-Code angezeigt, vieles aber auch nicht, und HTML-Tags, die im Quelltext INNERHALB von PHP-Klammern stehen, werden befolgt.

Es kann noch sein, daß in der php.ini irgendwas nicht stimmt. Aber da müßte ich doch eigentlich auch Fehlermeldungen bekommen. Die ganze Datei ist zu groß, um sie hier ins Forum zu stellen, ich habe sie daher mal als Textdatei hochgeladen nach

Kann mir jemand von euch sagen, wie ich meinen Apache dazu bringen kann, PHP-Code in den Dateien abzuarbeiten ?

Mit LINUX erlebe ich diesen Unsinn nicht, aber ich wills nun eben auch mit WINDOWS haben. Und noch etwas (auch wenn das eigentlich keine Relevanz haben sollte): als Browser setze ich fast immer IE 5.5 ein.

Christoph S.

  1. Moin Christoph,

    [...] Der Apache läuft problemlos, gibt keine
    Fehlermeldungen aus.

    auch nicht in apache\logs\error.log ?
    Bei deiner Konfiguration kann ich das kaum glauben.

    ScriptAlias /php3/ "D:/Php/"
    ScriptAlias /php/ "D:/Php/"

    da reicht einer (du willst ja nur ein PHP und zwar php4, das das mit mehr als
    einer Endung laufen soll steht hier nicht!)

    ScriptAlias /php/ "D:/Php/"

    AddType application/x-httpd-php3 .phtml .php3 .php
    AddType application/x-httpd-php3-source .phps
    AddType application/x-httpd-php .phtml .php3 .php
    AddType application/x-httpd-php-source .phps

    das ist auch zuviel des guten, auf was soll der arme Indianer denn nun die
    .php Files legen?
      AddType application/x-httpd-php .phtml .php3 .php
      AddType application/x-httpd-php-source .phps
    reicht.

    AddHandler cgi-script .php3
    AddHandler cgi-script .php
    AddHandler server-parsed .php3
    AddHandler server-parsed .php

    Hä ?  PHP ist PHP und weder server-parsed noch cgi-scritp. Diese Zeilen sollten
    ins Datennirvana verschoben werden.

    AddType text/html .php3
    AddType text/html .php

    und noch mehr Type fürs arme php -> Auch diese Zeilen sollten der
    Entfernen-Taste gewidmet werden.

    Action application/x-httpd-php3 "/php3/php.exe"
    Action application/x-httpd-php "/php/php.exe"

    auch hier reicht wieder eine Zeile, nämlich:
      Action application/x-httpd-php "/php/php.exe"
    Das /php/ ist das, was du oben unter ScriptAlias vereinbart hast.

    Das 'klassiche' PHP-Testprogramm  ist übrigens
    <?
      phpinfo();
    ?>
    und liefert dir viele nützliche Informationen zu deiner Installation.

    Gruss,
    Carsten

    1. hallo Carsten,

      [...] Der Apache läuft problemlos, gibt keine
      Fehlermeldungen aus.

      auch nicht in apache\logs\error.log ?

      nein, auch da nicht.

      Bei deiner Konfiguration kann ich das kaum glauben.

      doch ... kommt gleich ;-)

      ScriptAlias /php3/ "D:/Php/"
      ScriptAlias /php/ "D:/Php/"

      da reicht einer (du willst ja nur ein PHP und zwar php4, das das mit mehr als
      einer Endung laufen soll steht hier nicht!)

      ich sagte ja, daß ich eine Menge Kombinationen durchgespielt habe, bei denen immer mal die eine oder andee Zeile auskommentiert wurde. Zum Beispiel ist der Apache mal mit auskommentierten "php3"-Angaben, mal mit auskommentierten "php"-Angaben gelaufen. Es war immer nur EINE davon aktiv, ich habs bloß hier in meinem Posting alles untereinandergeschrieben. Tatsächlich läuft Apache bei mir aber auch dann, wenn ALLES angegeben wird  -  und nix steht im error.log

      AddHandler cgi-script .php3
      AddHandler cgi-script .php
      AddHandler server-parsed .php3
      AddHandler server-parsed .php

      Hä ?  PHP ist PHP und weder server-parsed noch cgi-scritp. Diese Zeilen sollten
      ins Datennirvana verschoben werden.

      Das hab ich aus irgendeinem Tutorial, weiß jetzt bloß nicht mehr genau, aus welchem.

      AddType text/html .php3
      AddType text/html .php

      und noch mehr Type fürs arme php -> Auch diese Zeilen sollten der
      Entfernen-Taste gewidmet werden.

      dann bekomme ich aber die Browser-Abfrage, ob eine Datei *.php heruntergeladen oder geöffnet werden soll, und wenn ich "öffnen" sage und den IE als Programm angebe, sagt er mir, er kennt das Dateiformat nicht.

      Das 'klassiche' PHP-Testprogramm  ist übrigens
      <?
        phpinfo();
      ?>
      und liefert dir viele nützliche Informationen zu deiner Installation.

      nein, tut es nicht. Es passiert überhaupt nichts, das ist ja mein Problem.

      Vielleicht kann der Apache 1.3.14 irgendwas besser, ich hab das Teil eben gezogen und muß ihn noch installieren.

      Christoph S.

  2. Hallo Carsten
    Du schreibst das du die PHP .dll`s in das Windows/System-Verzeichniss geladen hast,
    da gehören Sie aber nicht hin, sondern die bleiben im PHP-Verzeichniss.

    in der php.ini die im Verzeichnis apache/conf liegen sollte,
    must du eigentlich nur den extension_dir =c:\dein_php4_verzeichniss ändern
    und den
    doc_root = c:\apache\htdocs
    hier müssen auch deine auszuführenden Dateien liegen .

    Have Fun

    Andi