当通过Lion上的Ajax运行时,PHP脚本会回显自己的内容

时间:2012-08-17 18:15:32

标签: php javascript ajax osx-lion

我对我说的是一个奇怪的问题,我想知道你是否可以帮助我找出我正在做的那个可耻的明显错误。

我有一个javascript应用程序,通过ajax运行一堆php脚本,全部在我的Mac上本地运行,使用内置的apache服务器。它已经工作了多年,但在我的新款Lion Mac上,php脚本不再返回他们应该阅读的文件。他们自己返回php脚本。

如果我从命令行运行它们,PHP脚本工作正常。如果我直接从命令行运行它们,它们工作正常。他们在Snow Leopard计算机上运行Ajax。如果Ajax在我的Lion Mac上运行它们,它们就无法工作。

我尝试过的事情:

  • 我调整了httpd.conf以便加载php模块,然后重启了我的Mac。

  • Apache肯定在运行:127.0.0.1/~myname/获取“it works”msg。

  • 我尝试使用jquery运行ajax并使用老式的longhand方式。同样的问题。 (我确保jquery实际上正在加载。)

  • 我没有使用短代码“<?”在我的PHP脚本

  • php文件与html和javascript文件位于同一目录中。权限与Snow Leopard计算机上的权限相同

我上传和下调谷歌搜索,但我很难过。有什么建议?谢谢!

2 个答案:

答案 0 :(得分:1)

问题似乎是我的Lion机器上安装了php 5.3.1。当我更新到php5.4时,它又开始工作了。

要更新到php5.4,我按照这里的说明操作:http://php-osx.liip.ch/感谢您的帮助,Stackoverflow!

答案 1 :(得分:0)

  • 是否启用了PHP并正确配置? 修改您的/etc/apache2/httpd.conf并确保该行:LoadModule php5_module libexec/apache2/libphp5.so存在,然后重新启动Apache:sudo apachectl restart
  • 是否正在加载正确/预期php.ini On Lion-upgrade the php.ini file will be renamed to /etc/php.ini-5.2-previous and a new sample PHP configuration file, /etc/php.ini.default is put in place !!!
    因此,您可能想要重新配置php.ini文件。
  • 以前在/usr/lib/php/extensions/.../下安装的扩展程序已被删除 因此,如果您希望仍然使用5.3扩展,则需要重新构建它们。
  • 您现在可以加载包含<?php phpinfo();?>的phpinfo.php文件。
  • 现在,如果您使用mySQL指令(和其他本地人),请检查phpinfo。
  • Apple已包含Suhosin补丁和扩展程序 Suhosin是Hardened-PHP project的一部分,旨在保护PHP应用程序免受缓冲区溢出和格式化字符串漏洞的影响。将Suhosin的feature-list与您的php脚本进行比较。
  • 可能会使用已弃用的php语句(在旧版本的php中有效)?

现在有用吗?