SSL = html Seiten ok. // php seiten = weiße seite

Lord_Icon

Member
Hi

nach längeren frickeln und guter Hilfe hier aus dem Forum habe ich SSL für meine Homepage zum laufen gebracht.

Das Problem dabei ist derzeitig aber, das ich nur html Seiten per https öffnen kann.
Sobald ich ne *.php Datei öffnen möchte, bekomme ich eine weiße Seite.

Das mit der weißen Seite = da vermute ich die 403. Da bin ich selbst aber noch dran.

Aber was kann ich tun, damit SSL auch auf php hört bzw php ausführt
 
Bitte: Fakten, Fakten, Fakten.
Oder übersetzt: Logs, Logs, Logs.

Und die Konfiguration wäre auch nicht schlecht.

BTW: SSL hat mit PHP technisch nichs zu tun. Es ist lediglich ein krypto-Wrapper um den HTTP-Stream.
Und dass SSL etwas ausführt, ist inhaltlich Unsinn. Das aber nur am Rande zur Begriffsklärung.
 
ahja.. ich dachte, das man das in den vhost oder in irgendeiner ssl includeten Datei "freischalten" muß.

Soll ich dich conf jetzt nochmal posten oder reicht der andere Thread. Hier ging es aber darum, das ich SSL nicht starten konnte... wie sich später rausstellte, wegen fehlenden 443 Port freischaltung. Ist also kein doppel posting.
 
Und jetzt gehts drum, dass du beim Aufruf per HTTPS eine weiße Seite bekommst, oder? Ein völlig eigenständiger Vorgang, der mit völlig eigenständigen Log-Auszügen sicher super zu untersuchen ist.

Zudem hätte ich gern die Konfiguration gesehen, wie sie tatsächlich jetzt im Moment des Auftretens des Problems vorliegt. Im anderen Thread sehe ich btw. keine Konfiguration. Nur winzigste Auszüge und Vorschläge, was du machen kannst.

Normal ist es unerheblich, wie man zugreift - ob HTTP oder HTTPS. Das ist nur der Transport-Layer. Die Bearbeitung der Anfragen im Apache laufen für die Protokolle identisch. Daher vermute ich eine abweichende Konfiguration deiner VHosts für HTTP bzw. HTTPS.
 
oki...

die SSL Vhost
Code:
<VirtualHost 89.***.222.247:443>
ServerName www.meine-domain.de
DocumentRoot /srv/www/htdocs/ks014/html
SSLEngine on
SSLCertificateFile    /etc/apache2/ssl.crt/www_meine-domain_de.crt
SSLCertificateKeyFile /etc/apache2/ssl.key/www_meine-domain_de.key

        ErrorLog    /var/log/apache2/error_SSL.log
        TransferLog /var/log/apache2/access_SSL.log
        CustomLog /var/log/apache2/ssl_request_log   ssl_combined

</VirtualHost>


Soo... die loogs nochmal geleert und den apachen neugestartet. Https seite nochmal aufgrufen.
Folgende Logs:

error_SSL.log = leer
rcapache2.out = Syntax OK (also nur dieser eine Eintrag)

SSL.log
Code:
[Mon Mar 31 22:55:45 2008] [info] removed PID file /var/run/httpd2.pid (pid=31826)
[Mon Mar 31 22:55:45 2008] [notice] caught SIGTERM, shutting down
[Mon Mar 31 22:55:46 2008] [info] Init: Seeding PRNG with 0 bytes of entropy
[Mon Mar 31 22:55:46 2008] [info] Init: Generating temporary RSA private keys (512/1024 bits)
[Mon Mar 31 22:55:46 2008] [info] Init: Generating temporary DH parameters (512/1024 bits)
[Mon Mar 31 22:55:46 2008] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Mon Mar 31 22:55:46 2008] [info] Init: Initializing (virtual) servers for SSL
[Mon Mar 31 22:55:46 2008] [info] Server: Apache/2.2.4, Interface: mod_ssl/2.2.4, Library: OpenSSL/0.9.8e
[Mon Mar 31 22:55:46 2008] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Mon Mar 31 22:55:46 2008] [info] Init: Seeding PRNG with 0 bytes of entropy
[Mon Mar 31 22:55:46 2008] [info] Init: Generating temporary RSA private keys (512/1024 bits)
[Mon Mar 31 22:55:46 2008] [info] Init: Generating temporary DH parameters (512/1024 bits)
[Mon Mar 31 22:55:46 2008] [info] Init: Initializing (virtual) servers for SSL
[Mon Mar 31 22:55:46 2008] [info] Server: Apache/2.2.4, Interface: mod_ssl/2.2.4, Library: OpenSSL/0.9.8e
[Mon Mar 31 22:55:46 2008] [notice] Apache/2.2.4 (Linux/SUSE) mod_ssl/2.2.4 OpenSSL/0.9.8e PHP/5.2.5 with Suhosin-Patch configured -- resuming normal operations
[Mon Mar 31 22:55:46 2008] [info] Server built: Nov  9 2007 14:08:21

Code:
[31/Mar/2008:22:57:09 +0200] cotb-4db3197e.pool.einsundeins.de TLSv1 AES128-SHA "GET /xtc/ HTTP/1.1" - "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; .NET CLR 1.1.4322; InfoPath.2; FDM)"
~


Also meiner Meinung nach, sind in den Logs rein garnichts zu erkennen.
Wird noch eine andere Dateiausgabe benötigt ?
 
Und die nicht-SSL-Konfig?
Und die error.log ohne _SSL? Und das php-error.log?

Wenn der Zugriff scheitert und in den Logs nichts steht, dann schaust du entweder im falschen Log oder das Loglevel ist zu niedrig.
Was steht im access.log? Es muss ja wenigstens eine Antwort auf den Request geben. Wie ist der HTTP-Response-Code?
 
error_log = ist leer

es ist zwar noch access.log & access_log vorhanden = aber das wird für diesen Fall wohl überflüssig sein.


php-error.log = so und auch so ähnlich vorhanden.

Die normale vhost
Code:
 <Directory "/srv/www/htdocs/ks014/html">

  Options  +FollowSymLinks  +SymLinksIfOwnerMatch
   <IfModule mod_access.c>
    Allow from all
   </IfModule>
 </Directory>

 <VirtualHost 89.***.222.247:80>
 ServerName "meine-domain.de"
 ServerAlias ks014.www.meine-domain.de www.meine-domain.de

 SuexecUserGroup ks014 ks014
 DocumentRoot "/srv/www/htdocs/ks014/html"
 ScriptAlias /cgi-bin/ /srv/www/htdocs/ks014/html/cgi-bin/
 <IfModule mod_python.c>
  <Files ~ "\.py$">
   AddHandler python-program .py
   PythonHandler mod_python.publisher
  </Files>
 </IfModule>

 <Files ~ "\.(wml.*|wbmp)$">
 deny from all
 </Files>

 php_admin_flag safe_mode On
 php_admin_value open_basedir /srv/www/htdocs/ks014/:/usr/share/php
 php_admin_value session.save_path /srv/www/htdocs/ks014/temp
 php_admin_value upload_tmp_dir /srv/www/htdocs/ks014/temp
 php_admin_value safe_mode_exec_dir /srv/www/htdocs/ks014/temp
 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@meine-domain.de"
 php_admin_flag register_globals off
</VirtualHost>


...oder das Loglevel ist zu niedrig.

in der /etc/php5/apache2/php.ini steht

error_reporting = E_ALL ^ E_NOTICE
 
Die normale vhost
Code:
 <Directory "/srv/www/htdocs/ks014/html">
[... ne ganze Menge Zeilen ...]
</VirtualHost>
Wieso sind die fehlenden Zeilen nicht in der VHost-Config für SSL?

Du kannst das auch per include nur einmal pflegen.
Es muss aber immer drin sein. Auch bei SSL.
 
???

was meist du ?

Das hier, was du stehen gelassen hast...
DocumentRoot "/srv/www/htdocs/ks014/html"
= das is ja drin

oder das, was du rausgenommen hast = [... ne ganze Menge Zeilen ...]
 
Servus,

warum keine php_error geschrieben wird, müsstest du mal in der php.ini prüfen.
Mal aus dem Bauch raus, würde ich darauf tippen, dass das PHP-Script safe_mode benötigt.
In der vhost für HTTP hast du es ja eingeschalten, in der vhost für HTTPS aber unterlassen.

Nimm mal die Zeilen in die Vhost für HTTPS auf:

SuexecUserGroup ks014 ks014
ScriptAlias /cgi-bin/ /srv/www/htdocs/ks014/html/cgi-bin/
...
php_admin_flag safe_mode On
php_admin_value open_basedir /srv/www/htdocs/ks014/:/usr/share/php
php_admin_value session.save_path /srv/www/htdocs/ks014/temp
php_admin_value upload_tmp_dir /srv/www/htdocs/ks014/temp
php_admin_value safe_mode_exec_dir /srv/www/htdocs/ks014/temp
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f info@meine-domain.de"
php_admin_flag register_globals off

Ansonsten leg dir doch mal eine phpinfo.php an und schmeiss die in das Webroot.
Daran kannst du dann ablesen, was safe_mode und register_globals in den globalen Settings sind und wie es aktuell in der vhost aussieht...
 
:D klappt.

Es war zwar nicht der php mode, weil XTC kein safe mode benötigt...

aber ich hab einfach mal alle Einträge, die ich in die http-vhost gepackt habe auch in die https vhost.

und siehe da = works.

ich weiß jetzt zwar nicht, welcher eintrag davon das Problem behoben hat = aber das is jetzt erstmal 2t rangig.

DANKE !!!!
 
Back
Top