簡體   English   中英

正在下載 PHP 文件而不是在網站上顯示

[英]PHP Files Being Downloaded instead of showing on website

所以我在我的亞馬遜 Linux 服務器上安裝了 Php70*,並安裝了 apache (httpd),當我在瀏覽器上查看 php 頁面時,它會下載 php 文件而不是在瀏覽器上顯示。

我嘗試了不同的瀏覽器,清除了緩存,檢查了我的 php 文件的權限,但錯誤仍然存在。

這是我系統上的內容,希望對您有所幫助; 還有什么我可能會遺漏的嗎? 任何幫助表示贊賞。

(我有一個簡單的 php 文件,叫做“phpinfo.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

我也遇到了同樣的問題大約兩天。 這個 [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. 如果其中任何一個仍然無法解決,請重新啟動您的服務器並硬重新加載/清除瀏覽器緩存。 然后重新加載頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM