我最近在我的 RaspberryPi 上安装了 apache2 和 Mysql,我还设置了 FTP,这样我就可以在我的 PC 上编辑我的文件并将它们直接上传到网络服务器。
如果我现在通过 IP 地址连接到我的服务器,我可以看到 index.html,但是一旦我尝试打开 *.php 文件,它就会显示所述文件的内容,而不是解释它。
是否有任何常见的错误可能导致这种情况发生?
谢谢你的帮助
这种错误主要发生3个原因
<?php
和关闭 php 标记?>
如果您禁用了短 php 标签,也会发生同样的事情。<?...
如果它被禁用 - 所有以,开头的代码<?=...
都将像简单的文本一样打印在屏幕上。一切都可以很容易地检查:只需创建一些 php 文件并添加<?php echo phpinfo() ?>
. 如果浏览器将显示 php 信息 - 问题实际上在于禁用的短 pho 标签。
在这种情况下,您可以php.ini
使用指令简单地启用它short_open_tag=On
(但不推荐)。
这是来自php.ini
文件:
; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It's been
; recommended for several years that you not use the short tag "short cut" and
; instead to use the full <?php and ?> tag combination. With the wide spread use
; of XML and use of these tags by other languages, the server can become easily
; confused and end up parsing the wrong code in the wrong context. But because
; this short cut has been a feature for such a long time, it's currently still
; supported for backwards compatibility, but we recommend you don't use them.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = On
您的 HTTP 响应标头应具有“Content-Type:text/html”。你检查过吗?
您没有配置 PHP 来解释 Apache 中的 php 文件,或者 Apache 不知道 PHP 模块。
apt-get install libapache2-mod-php5
或者
apt-get install php5
在 apache.conf (或类似的)中添加如下行:
LoadModule php5_module modules/libphp5.so
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
安装 php 和任何网络服务器
http://www.apachefriends.org/en/xampp.html
下载并安装并转到 C:/xampp/htdocs
创建项目目录并在浏览器中输入 localhost/your_directory_name