Search code examples
phpapache.htaccessconfigurationlamp

Why are my php tags converted to html comments?


A friend's lamp host seems to be misconfigured. I try to execute php, but it doesn't seem to be working.

In Chrome's inspect element:

<?php echo 'test'; ?> 

becomes :

<!--?php echo 'test'; ?-->

Furthermore, its been triggering a file download, rather than opening it as a webpage.

I've tried various code in an .htaccess file, but it doesn't seem to have any effect:

AddType x-mapp-php5 .php
AddType application/x-httpd-php .php
AddHandler x-mapp-php5 .php

Solution

  • The place to correctly configure PHP operation is the httpd.conf file, which resides in the conf subdirectory of your Apache installation directory.

    In there, you'll want to look for the module loading section, which will be a bunch of lines that start with LoadModule. Somewhere in there, you should have the following (or something very similar):

    LoadModule php5_module "location\of\your\php\installation"
    AddType application/x-httpd-php .php
    PHPIniDir "location\of\your\php\configuration\file"
    

    I'm not all too familiar with Linux, but in Windows (WAMP) installations, those would be something along the lines of:

    LoadModule php5_module "c:/program files/php/php5apache2.dll"
    AddType application/x-httpd-php .php
    PHPIniDir "C:/program files/php"
    

    And the httpd.conf file, on my machine, is at C:\Program Files\Apache Group\Apache2\conf\httpd.conf.

    It could also be that PHP is simply not installed at all on your machine, in which case, you will have to download it and install it. Brad's already posted the relevant link in one of his comments, (+1, by the way, Brad), but for the sake of having everything in one spot:

    PHP: Installation and Configuration - Manual