【问题标题】:PHP code is shown in browser as plain-text and not processedPHP 代码在浏览器中显示为纯文本且未处理
【发布时间】:2013-12-25 23:47:31
【问题描述】:

我是 PHP 新手,也是在 Mac OS X 上开发的新手。

我在前端(笔记本电脑上的浏览器)上有以下代码:

$('form').on('submit', function(e) {
    $.post( 'save.php', $(this).serialize(), function(response) {
        console.log( response );
    });

    e.preventDefault();
});

以及后端的这个简单的 PHP 代码(我的笔记本电脑上的 Apache 服务器):

<?php

$f = $_POST['content']); //content is coming from a form textarea

echo $f;

我希望我提交的任何内容都会在控制台上回显(通过 PHP)。相反,我在控制台中获得了整个 PHP 代码。我的基本理解是服务器没有执行 PHP 代码,而是将其作为纯文本返回。

我已经搜索了三个小时并做了以下事情:

  1. (重新)安装了 MAMP。
  2. 确保 Apache 服务器确实在运行
  3. 确保我通过 Apache 访问该站点,而不是在浏览器中将其作为文件打开。我在做 /localhost/~username/index.html
  4. 检查 httpd.conf 是否包含这一行并且确实包含:

    LoadModule php5_module modules/libphp5.so

  5. 将此添加到 httpd.conf 并重新启动 Apache 服务器:

    AddType application/x-httpd-php .php

然后我开始阅读 PHP 文档并找到 this,它描述了我遇到的问题和解决方案。问题在于,与 libphp5.so 不同,我实际上在 modules 文件夹下没有 mod_php.so 或 lib_perl.so 文件。我还在 Spotlight 上搜索了它们,但没有返回任何内容。

那么...我还需要做什么/检查?提前谢谢你。

【问题讨论】:

  • 服务器配置问题更适合于 serverfault.com,所以更适合编程问题。
  • 1.您的 php 文件中没有结束标记 ?&gt; 2. 您是否在服务器上安装了 PHP?当您使用简单的 echo 在 apache 根目录中创建 index.php 时会发生什么? phpinfo()
  • PHP 通常不解析.html 文件。将文件更改为.php,看看是否可行。
  • 结束标签无关紧要。在所有 PHP 文件中都不需要它。您是否根据您的虚拟主机配置将这些文件保存在正确的目录中?
  • @alfasin 关闭标签实际上是不建议使用的,因为尾随空格之后结束标签将通过。

标签: php apache mod-php


【解决方案1】:

好的,我想通了。我相信这个问题源于我自己对 OS X 和特别是 Apache/MAMP 缺乏了解(我对两者都是新手!)。具体来说,我没有意识到 OS X 运行自己的 Apache 服务器,并且当您安装 MAMP 时,它本质上为您提供了替代安装(我认为?)。当我尝试使用“sudo apachectl -k start”从终端启动 Apache 时,我意识到了这一点,它说进程已经在运行。然后我做了一些谷歌搜索并理解了原因。

然后我实施了解决方案。以前,我在 User\Sites 下拥有所有内容,并且我正在以纯文本形式获取 PHP 脚本。我将文件移动到 Applications/MAMP/htdocs。然后我运行 MAMP PRO,它显示 Apache 在端口 8888 上运行。所以我导航到 localhost:8888/~username/ 并提交表单,PHP 脚本被正确处理,我得到了回显。

如果我的理解不正确,请有人纠正我。但至少我的小项目现在有效。 :)

【讨论】:

  • 似乎是对的。将此标记为答案,以便其他有相同问题的人首先看到。
  • 是的,我会的。现在它告诉我需要等待 2 天才能接受自己的答案。
  • 哦,好吧,抱歉不知道。很高兴问题得到解决。节日快乐
猜你喜欢
  • 2017-07-04
  • 2013-05-12
  • 2012-10-25
  • 2023-04-10
  • 2012-04-23
  • 2012-02-17
  • 1970-01-01
  • 2015-09-03
  • 2019-08-04
相关资源
最近更新 更多