Why is my PHP source code showing?
So, I added the following to my http.conf file:
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 works now, but it displays the PHP source code? What could be the reaso开发者_如何学Gon for this?
"Server configuration error" is the reason ;-)
It is choosing to serve PHP files as "plain content" instead of handing them to a PHP engine for processing. This doesn't have anything to do with SSL (it will just as happily send the "plain content" over a secure connection).
From 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
And from PHP pages won't load:
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps
See a pattern? :-) In any case, read the fine installation instructions for the particular platform/server.
Happy coding.
It could also be that your php.ini configuration is set to not parse code between short php tags.
In centos this can happen because of php-module missing, to fix that issue we have to install
sudo yum install php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml
Just type LOCALHOST in your browser. then it will open the http://localhost/htdocs/ location. then navigate to your php file. It will open accordingly.
精彩评论