【问题标题】:PHP Files Being Downloaded instead of showing on websitePHP 文件被下载而不是在网站上显示
【发布时间】:2017-07-11 05:46:34
【问题描述】:

所以我在我的亚马逊 Linux 服务器上安装了 Php70*,并安装了 apache (httpd),当我在浏览器上查看 php 页面时,它会下载 php 文件而不是在浏览器上显示。

我尝试了不同的浏览器,清除了缓存,检查了我的 php 文件的权限,但错误仍然存​​在。

这是我系统上的内容,希望对您有所帮助;还有什么我可能会丢失的吗?任何帮助表示赞赏。

(我有一个名为“phpinfo.php”的简单php文件,其中是

在终端的我的 ec2 实例上,我可以成功执行 php phpinfo.php

php -v
PHP 7.0.14 (cli) (built: Jan 18 2017 19:13:23) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.14, Copyright (c) 1999-2016, by Zend Technologies

httpd -v
Server version: Apache/2.4.25 (Amazon)
Server built:   Jan 19 2017 16:55:49

我已经安装了所有 php70 包:

sudo yum list installed php70*
Loaded plugins: priorities, update-motd, upgrade-helper
Installed Packages
php70.x86_64                  7.0.14-1.20.amzn1                    @amzn-updates
php70-bcmath.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-cli.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-common.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-dba.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-dbg.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-devel.x86_64            7.0.14-1.20.amzn1                    @amzn-updates
php70-embedded.x86_64         7.0.14-1.20.amzn1                    @amzn-updates
php70-enchant.x86_64          7.0.14-1.20.amzn1                    @amzn-updates
php70-fpm.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-gd.x86_64               7.0.14-1.20.amzn1                    @amzn-updates
php70-gmp.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-imap.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-intl.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-json.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-ldap.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-mbstring.x86_64         7.0.14-1.20.amzn1                    @amzn-updates
php70-mcrypt.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-mysqlnd.x86_64          7.0.14-1.20.amzn1                    @amzn-updates
php70-odbc.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-opcache.x86_64          7.0.14-1.20.amzn1                    @amzn-updates
php70-pdo.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-pdo-dblib.x86_64        7.0.14-1.20.amzn1                    @amzn-updates
php70-pecl-apcu.x86_64        5.1.5-2.2.amzn1                      @amzn-main   
php70-pecl-apcu-devel.x86_64  5.1.5-2.2.amzn1                      @amzn-main   
php70-pecl-igbinary.x86_64    1.2.2-0.1.20151217git2b7c703.5.amzn1 @amzn-main   
php70-pecl-igbinary-devel.x86_64
                          1.2.2-0.1.20151217git2b7c703.5.amzn1 @amzn-main   
php70-pecl-imagick.x86_64     3.4.2-1.4.amzn1                      @amzn-main   
php70-pecl-imagick-devel.x86_64
                          3.4.2-1.4.amzn1                      @amzn-main   
php70-pecl-memcache.x86_64    3.0.9-0.4.20160311git4991c2f.8.amzn1 @amzn-main   
php70-pecl-memcached.x86_64   3.0.0-0.1.20160217git6ace07d.2.amzn1 @amzn-main   
php70-pecl-oauth.x86_64       2.0.2-1.2.amzn1                      @amzn-main   
php70-pecl-ssh2.x86_64        1.0-5.16.amzn1                       @amzn-main   
php70-pecl-uuid.x86_64        1.0.4-7.1.amzn1                      @amzn-main   
php70-pecl-yaml.x86_64        2.0.0-1RC8.3.amzn1                   @amzn-main   
php70-pgsql.x86_64            7.0.14-1.20.amzn1                    @amzn-updates
php70-process.x86_64          7.0.14-1.20.amzn1                    @amzn-updates
php70-pspell.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-recode.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-snmp.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-soap.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-tidy.x86_64             7.0.14-1.20.amzn1                    @amzn-updates
php70-xml.x86_64              7.0.14-1.20.amzn1                    @amzn-updates
php70-xmlrpc.x86_64           7.0.14-1.20.amzn1                    @amzn-updates
php70-zip.x86_64              7.0.14-1.20.amzn1                    @amzn-updates

我看到有人提到要更改 /etc/httpd/conf/httpd.conf 文件以包含 addtype/handler 所以这就是我所拥有的:

grep -n "php" /etc/httpd/conf/httpd.conf
54:LoadModule php7_module   modules/libphp-7.0.so
163:    DirectoryIndex index.html index.php
175:    SetHandler application/x-httpd-php
287:    AddType application/x-httpd-php .php
288:    AddType application/x-httpd-php-source  .phps
301:    AddHandler php7-script  .php
302:    AddHandler application/x-httpd-php .phps
303:    AddHandler application/x-httpd-php .php

我还有 short_open_tags=on 以防万一:

grep short_open_tag php-7.0.ini
; short_open_tag
short_open_tag = On

grep short_open_tag php.ini
; short_open_tag
short_open_tag = On

【问题讨论】:

  • 这是一个长镜头,但您如何访问该页面?通过 url 或在您的目录列表中单击它?
  • 也许给你的文件添加执行权限?我还没有遇到这个问题,所以我要完全猜测模式。
  • 我通过mydomain/phpinfo.php访问phpsite
  • public_html]$ ls -lt *.php -rwxrwxrwx 1 root root 26 Feb 21 07:23 test.php -rwxrwxrwx 1 root root 20 Feb 21 06:04 phpinfo.php
  • 也停止/启动了 httpd 服务,但仍然没有。

标签: php apache amazon-ec2 httpd.conf php-7


【解决方案1】:

我也经历了同样的问题大约两天。这个 [link][1] 解决了我的问题!

如果该链接中的任何解决方案都不起作用,那么还有其他一些需要检查的事项:

  1. 建议完全卸载 php* 并安装一个新的。确保您安装的 php 版本。您可以通过php -v查看

  2. 处理您的 .htaccess 文件。它可能会导致您下载而不是执行您的脚本(在某些情况下)

  3. 检查您的 httpd/apache2 配置文件:这非常重要!如果您在配置文件中映射了错误或不正确的模块,可能会导致问题。

查看 AddHandler 和 AddType 等指令。对于 PHP,它应该如下所示:

AddType  application/x-httpd-php         .php
AddType  application/x-httpd-php-source  .phps

AddHandler application/x-httpd-php52 .php

这可能因您的 PHP 版本而异。

  1. 确保您的 apache/httpd 模块文件夹中有 php-.so (linux) 或 php-.dll (windows)(这是为了额外确保 php 已启用并且 php 已为 apache 正确加载)。

  2. 如果其中任何一个仍然无法解决,请重新启动您的服务器并硬重新加载/清除浏览器缓存。然后重新加载页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 1970-01-01
    • 2013-02-06
    • 2021-12-11
    • 1970-01-01
    相关资源
    最近更新 更多