开发者

apache2 on ubuntu - php files downloading

开发者 https://www.devze.com 2023-03-11 09:56 出处:网络
On my new Ubuntu system, I\'ve managed to get Apache2 up and running for developing my ZendFramework Web Applications...

On my new Ubuntu system, I've managed to get Apache2 up and running for developing my ZendFramework Web Applications...

I've go开发者_高级运维t my available-sites config working correctly because I am able to request localhost and it servers up the correct index.html from my specified directory.

Problem : if I request index.php, firefox attempts to download the file instead of running the script.

Any Ideas why this would happen?

I've added the following to httpd.conf but it hasn't helped.

AddHandler application/x-httpd-php .php5 .php4 .php .php3 .php2 .phtml

AddType application/x-httpd-php .php5 .php4 .php .php3 .php2 .phtml


If Firefox downloads your PHP files it means that your server doesn't have PHP or the Apache PHP module installed.

Have you installed the Apache PHP module? If not then install it by typing this into a terminal:

sudo apt-get install libapache2-mod-php5

And if yes, do you have your index.php located in /var/www/?

Make sure to enable PHP with the command

sudo a2enmod php5


If you are using userdir (http://localhost/~user/phpinfo.php) you will want to:

vi /etc/apache2/mods-enabled/php5.conf

Change

<IfModule mod_userdir.c>
   <Directory /home/*/public_html>
       php_admin_value engine Off
   </Directory>
</IfModule>

to comment the php_admin_value

<IfModule mod_userdir.c>
   <Directory /home/*/public_html>
       #php_admin_value engine Off
   </Directory>
</IfModule>

then

service apache2 restart


For me, the solution was to create the following 2 symbolic links:

ln -s /etc/apache2/mods-available/php5.conf /etc/apache2/mods-enabled/php5.conf
ln -s /etc/apache2/mods-available/php5.load /etc/apache2/mods-enabled/php5.load

and to restart Apache:

/etc/init.d/apache2 restart

Hitting the http://my_server/test.php file, which has contents:

<?php
   phpinfo();
?>

came right up, and the browser didn't try to download the php file. Didn't have to restart the browser, either.


You need to enable the PHP extension. Do this with the command sudo a2enmod php.


I'll assume you installed PHP already and installed the PHP module for Apache here...

Did you restart apache? If not: sudo service apache2 restart

Make sure that your httpd.conf file is also being executed. If necessary, restart it after making an edit that would cause an error on load. If it doesn't fail to restart, it's not running the .conf file.

If the problem still continues, close your browser, reopen it, and clear your cache. It might be the browser just caching the page response.


I have installed php 7.0 and getting the dailog box. I have installed apache php module for 7.0 version and it fix my problem.

sudo apt-get install libapache2-mod-php7.0

0

精彩评论

暂无评论...
验证码 换一张
取 消