Gjaa
Gjaa

Reputation: 1580

Apache 2 server on ubuntu can't parse php code inside html file

I installed apache2, php5 and the php5 apache module on Ubuntu 13.04.

Php is working on .php files but lines of php code inside html files do not execute.

Googling I found that must add AddHandler... and AddType... lines to httpd.conf but the version installed doesn't have this file or at least can't find it in /etc/apache2/

code example:

<html>
<head></head>
<body>
    <?php 
      phpinfo(); 
    ?>
</body>
</html>

Upvotes: 2

Views: 17778

Answers (4)

lukjar
lukjar

Reputation: 1

Add the following lines in /etc/apache2/mods-available/php7.0.conf SetHandler application/x-httpd-php

this worked for me. Thx Lukjar

Upvotes: 0

Gjaa
Gjaa

Reputation: 1580

Got it to work. my version of apache doesn't have httpd.conf, instead has php5.conf in /etc/apache2/mods-enabled/

editing that file, found this:

<FilesMatch ".+\.ph(p[345]?|t|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".+\.phps$">
    SetHandler applicatio
    ....
....

added the lines:

<FilesMatch ".+\.html$">
    SetHandler application/x-httpd-php
</FilesMatch>

now php parses the html files and <?php ... ?> code works.

Upvotes: 8

Jigsaw
Jigsaw

Reputation: 81

You can probably use a .htaccess configuration file for this.

Create a blank text file and name it .htaccess

(If your operating system does not allow file names starting with a dot just name the file temp.htaccess temporarily. After you have uploaded it to your server, rename the file to .htaccess)

Add the following line into the file:

AddType application/x-httpd-php .html .htm

If this does not work, try changing it to:

AddType application/x-httpd-php5 .html .htm

This is assuming that your apache configuration allows for .htaccess files to override the default settings.

Upvotes: 2

Sunil Bhatia
Sunil Bhatia

Reputation: 31

You can probably check under /etc/conf/httpd/httpd.conf

Alternatively you may want to use the 'find' command or run 'updatedb' and then 'locate httpd.conf' file.

The issue is unless you add the correct directives in httpd.conf - your php file will be rendered as a plain text file. Hence you wil have to LoadModule && AddType to get it running.

Upvotes: 2

Related Questions