2011-08-31 18 views
9

Więc dodałem następujące do mojego pliku http.conf:Dlaczego wyświetlany jest mój kod źródłowy PHP?

Listen443 

NameVirtualHost *:443 

<VirtualHost *:443> 
    DocumentRoot /PATH_TO/www 
    ServerName www.domain.com 
    SSLEngine on 
    SSLCertificateFile /PATH_TO/domain.crt 
    SSLCertificateKeyFile /PATH_TO/domain.key 
    SSLCertificateChainFile /PATH_TO/intermediate.crt 
</VirtualHost> 

https://www.domain.com teraz działa, ale wyświetla kod źródłowy PHP? Co mogłoby być tego przyczyną?

+0

Jaka jest twoja wersja Apache, na jakiej platformie pracujesz i czy używasz PHP jako modułu lub CGI? – DaveRandom

+0

Moduł, ale już mam działa dzięki pst. Ale dzięki za twoją pomoc, Dave! –

Odpowiedz

6

„błąd konfiguracji serwera” jest powód ;-)

Jest wyborze służyć pliki PHP jako „zwykły treści” zamiast rozdawać je na silniku PHP do przetwarzania. Nie ma to nic wspólnego z protokołem SSL (równie dobrze będzie wysyłać "zwykłą zawartość" za pośrednictwem bezpiecznego połączenia).

Od PHP: Installation:

AddModule mod_php.c 
LoadModule php_module   modules/mod_php.so 
LoadModule php5_module  modules/libphp5.so 
AddType application/x-httpd-php .php

I od PHP pages won't load:

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

Zobacz wzór? :-) W każdym przypadku przeczytaj szczegółową instrukcję instalacji dla konkretnej platformy/serwera.

Szczęśliwe kodowanie.

+0

To działało dzięki! :) Właśnie próbowałem zainstalować SSL i nigdy nie widziałem nikogo, kto by wspomniał o dodaniu tych linii. –

+0

Uratowałeś mi dzień. Dzięki jeszcze raz. –

+0

@krysis Nie ma za co :-) –

5

Może być tak, że twoja konfiguracja php.ini jest ustawiona tak, aby nie analizować kodu między krótkimi tagami php.

+0

NIESAMOWITE !! Dziękuję Ci!! Wpadłem w ten problem, gdy przenosiłem moją witrynę na lokalny serwer. Nigdy nawet nie zdawałem sobie sprawy, że przypadkowo użyłem shorttagów w jednym z moich plików! – James

0

W CentOS to może się zdarzyć z powodu php-modułu brakuje, aby naprawić problem, musimy zainstalować

sudo yum install php-mysql php-devel php-gd php-pecl-memcache PHP- pspell php-snmp php-xmlrpc php-xml