I recently installed apache2 and Mysql on my RaspberryPi, I also setup FTP so I can edit my Files on my PC and upload them directly to the webserver.
If I now connect to my server vis it's IP-Address I can see the index.html, but as soon as I try to open a *.php file it shows the content of said file instead of interpreting it.
Are there any common mistakes that could make this happen?
Thanks for your help
This kind of errors mainly happen 3 reason
<?php
and closing php tag ?>
Your HTTP's response header should have "Content-Type:text/html". Have you checked that?
You don't have PHP configured to interpret php files within Apache or the PHP module is not known to Apache.
apt-get install libapache2-mod-php5
or
apt-get install php5
in apache.conf (or similiar) add line like:
LoadModule php5_module modules/libphp5.so
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
Install php and any web server
http://www.apachefriends.org/en/xampp.html
download and install and goto C:/xampp/htdocs
make directory of your project and in browser type localhost/your_directory_name
The same thing can happen if you have short php tags disabled. If it is disabled - all code that starts with <?...
, <?=...
will be printed on the screen just as simple text. Everything can be checked very easy: just create some php file and add <?php echo phpinfo() ?>
. If browser will show php info - than problem is really in disabled short pho tags.
In that case you can simple enable that in php.ini
with the directive short_open_tag=On
(not recommended, however).
This is from php.ini
file:
; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It's been
; recommended for several years that you not use the short tag "short cut" and
; instead to use the full <?php and ?> tag combination. With the wide spread use
; of XML and use of these tags by other languages, the server can become easily
; confused and end up parsing the wrong code in the wrong context. But because
; this short cut has been a feature for such a long time, it's currently still
; supported for backwards compatibility, but we recommend you don't use them.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = On