PHP Script endet unter SSL immer bei >

muecke

Grünschnabel
Hallo allerseits,

ich schlage mich gerade mit einem mir unerklärlichen Phänomen herum:
Mein PHP-Programm läuft einwandfrei auf meinem Enktwicklungssystem und Ubuntu (LAMP) und auch inzwischen auf einem virtuellen Server von 1&1.
Jetzt soll das Ganze auch mit SSL, also https://-Zugriff funktionieren.
Aber sobald das '>'-Zeichen - egal in welchem Kontext - auftritt, wird der PHP-Modus beendet, sodass der darauf folgende PHP-Code als HTML interpretiert wird.
Z.B.:

PHP:
<?php
    $sValue = 2;
    if($sValue > 3)
    {
        echo 'irgendetwas';
    }
?>

Ergibt die Ausgabe:
3) { echo 'irgendetwas'; }

Ebenso:
PHP:
<?php
    $sValue = 2;
    // if($sValue > 3)
    {
        echo 'irgendetwas';
    }
?>

Ergibt die Ausgabe:
3) { echo 'irgendetwas'; }

Ich habe die php.ini sowie die apache2-Einstellungen durchgeschaut und leider keine Parameter gefunden, die auf eine Lösung hinweisen können.
Auf dem Server .sind folgende Versionen:
SuSE 10.3
PHP 5.2.9
Apache2 2.2.4
MySql 5.0.45

Vielen Dank für alle Tipps, ich bin wirklich ratlos.

Gruß,
muecke
 
Hab auch grad wenig Ahnung, aber hast du folgendes schon überlegt?
Unterstützt dieser Server PHP? Oder ientepretiert er <?php ...> als ein Tag?
Hat diene Datei die Endung php oder etwas was der Server ggf. nicht als php intepretiert?
 
Hallo,

Hab auch grad wenig Ahnung, aber hast du folgendes schon überlegt?
Unterstützt dieser Server PHP? Oder ientepretiert er <?php ...> als ein Tag?
Hat diene Datei die Endung php oder etwas was der Server ggf. nicht als php intepretiert?

Anscheinend versteht der Server tatsächlich kein php. Ich bin von einer index.html auf eine PHP-Datei weitergereicht worden. Denn ein reines test.php-Programm wird nicht ausgeführt, sondern zum download angeboten. Im http-Fall wird es aber ausgeführt.
Ich bin davon ausgegangen, dass derselbe apache2-Server, der das http-Protokoll mit PHP interpretiert, das dann auch bei https macht. Aber es macht schon Sinn, das zu unterscheiden.

Ich bin hier vielleicht falsch, aber vielleicht weiß es ja doch jemand, wo ich den apache2 dazu überreden kann, https mit PHP anzubieten.

Vielen Dank für die Hilfe.

Gruß,
muecke
 
Hallo yaslaw,

super klasse, die SSL-Einstellungen des apache2-Servers waren tatsächlich so, dass PHP nicht intepretiert wurde.
Unter /etc/apache2/conf.d mussten in der zz010_psa_httpd.conf-Datei dann noch unter dem :443-Port die Einträge
Code:
        <IfModule sapi_apache2.c>
                php_admin_flag engine on
                php_admin_flag safe_mode on
                php_admin_value open_basedir "/srv/www/vhosts/default/httpsdocs:/tmp"
        </IfModule>
        <IfModule mod_php5.c>
                php_admin_flag engine on
                php_admin_flag safe_mode on
                php_admin_value open_basedir "/srv/www/vhosts/default/httpsdocs:/tmp"
        </IfModule>
im Directory-Teil ergänzt werden müssen.

Nach einem Restart von apache2 tut es jetzt!

Vielen Dank für den entscheidenden Tipp!!

Viele Grüße,
muecke
 
Zurück