【问题标题】:apache2 on ubuntu - php files downloadingubuntu 上的 apache2 - php 文件下载
【发布时间】:2011-09-08 21:47:52
【问题描述】:

在我的新 Ubuntu 系统上,我已成功启动并运行 Apache2 以开发我的 ZendFramework Web 应用程序...

我的available-sites 配置工作正常,因为我能够请求localhost 并且它从我指定的目录中提供正确的index.html

问题:如果我请求index.php,firefox 会尝试下载文件而不是运行脚本。

任何想法为什么会发生这种情况?

我已将以下内容添加到 httpd.conf,但没有帮助。

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

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

【问题讨论】:

  • 更改httpd.conf后是否重启了apache?除此之外,我看不出有什么问题。 (我的服务器只有AddType,但我不确定它是否重要。)
  • 感谢您的回复。原来我只安装了 Apache 服务器,而不是 PHP。我以为它是捆绑在一起的,并且会一起安装...您知道他们对假设的看法...哈!
  • 如果有人有问题,并且libapache2-mod-php5 已经安装。然后,如果您在 public-html 主文件夹之一中遇到问题,请查看 /etc/apache2/mods-available/php5.conf - 它有一个部分为主文件夹关闭 PHP(出于某些原因)。 <Directory /home/*/public_html> php_admin_value engine Off ...

标签: php apache ubuntu


【解决方案1】:

如果 Firefox 下载您的 PHP 文件,则意味着您的服务器没有安装 PHP 或 Apache PHP 模块。

您是否安装了 Apache PHP 模块? 如果没有,则通过在终端中输入以下内容来安装它:

sudo apt-get install libapache2-mod-php5

如果是,您的 index.php 是否位于 /var/www/

确保使用命令启用 PHP

sudo a2enmod php5

【讨论】:

  • 哈!谢谢! (工作)这是否意味着我也需要单独安装mysql?有机会帮助我执行命令吗?非常感谢
  • @shane sudo apt-get install mysql-server
  • 您的绅士,谢谢。我目前正在从 Windows 开发迁移。 mysql安装也会给我phpmyadmin吗?
  • Obsidian_ 更快:) 如果您还想安装 phpmyadmin,请使用:sudo apt-get install phpmyadmin,然后您会在这里找到它:localhost/phpmyadmin
  • 下载 phpmyadmin 并自行设置要容易得多,而且您通常会获得更新的版本。 ubuntu 存储库中的 Web 应用程序通常会过时数月,甚至数年。 phpmyadmin.net/home_page/index.php
【解决方案2】:

如果您使用的是 userdir (http://localhost/~user/phpinfo.php),您需要:

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

改变

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

评论 php_admin_value

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

然后

service apache2 restart

【讨论】:

  • 我很困惑这是一个解决方案。具体来说,无论设置为On 还是Off,提及php_admin_value engine 似乎都有问题。为什么会这样?是否忽略空指令?
【解决方案3】:

对我来说,解决方案是创建以下 2 个符号链接:

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

并重新启动 Apache:

/etc/init.d/apache2 restart

点击http://my_server/test.php 文件,该文件包含以下内容:

<?php
   phpinfo();
?>

出现了,浏览器没有尝试下载 php 文件。也不必重新启动浏览器。

【讨论】:

  • 你可以用a2enmod php5创建simlinks
【解决方案4】:

您需要启用 PHP 扩展。使用命令sudo a2enmod php 执行此操作。

【讨论】:

    【解决方案5】:

    我假设您已经安装了 PHP,并在此处安装了 Apache 的 PHP 模块...

    你重启了apache吗?如果没有:sudo service apache2 restart

    确保您的 httpd.conf 文件也在执行中。如有必要,请在进行会导致加载错误的编辑后重新启动它。如果它没有重新启动失败,则它没有运行 .conf 文件。

    如果问题仍然存在,请关闭浏览器,重新打开,然后清除缓存。可能是浏览器只是缓存了页面响应。

    【讨论】:

      【解决方案6】:

      我已经安装了 php 7.0 并获得了 dailog 框。我已经为 7.0 版本安装了 apache php 模块,它解决了我的问题。

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

      【讨论】:

        猜你喜欢
        • 2021-07-24
        • 2018-08-26
        • 1970-01-01
        • 2018-07-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-09
        • 1970-01-01
        相关资源
        最近更新 更多