Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Lion上通过Ajax运行时,PHP脚本会回显自己的内容_Php_Javascript_Ajax_Osx Lion - Fatal编程技术网

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

在Lion上通过Ajax运行时,PHP脚本会回显自己的内容,php,javascript,ajax,osx-lion,Php,Javascript,Ajax,Osx Lion,我有一个奇怪的问题,我想知道你是否能帮我找出我犯下的可耻的明显错误 我有一个javascript应用程序,它通过ajax运行一系列php脚本,所有脚本都在我的Mac上本地运行,使用内置的apache服务器。它已经工作了很多年,但是在我的新Lion Mac上,php脚本不再返回它们应该读取的文件。它们返回php脚本本身 如果我从命令行运行php脚本,它们工作得很好。如果我直接从命令行运行它们,它们工作得很好。它们在一台雪豹计算机上从Ajax运行时运行良好。如果Ajax在我的Lion Mac上运行它

我有一个奇怪的问题,我想知道你是否能帮我找出我犯下的可耻的明显错误

我有一个javascript应用程序,它通过ajax运行一系列php脚本,所有脚本都在我的Mac上本地运行,使用内置的apache服务器。它已经工作了很多年,但是在我的新Lion Mac上,php脚本不再返回它们应该读取的文件。它们返回php脚本本身

如果我从命令行运行php脚本,它们工作得很好。如果我直接从命令行运行它们,它们工作得很好。它们在一台雪豹计算机上从Ajax运行时运行良好。如果Ajax在我的Lion Mac上运行它们,它们就不起作用

我尝试过的事情:

  • 我已经调整了httpd.conf,以便加载php模块,并且重新启动了Mac

  • Apache正在运行:127.0.0.1/~myname/获取“ItWorks”消息

  • 我尝试过使用jquery和老式的手写方式运行ajax。同样的问题。(我已经确保jquery实际上正在加载。)

  • 我没有使用短代码“
    • 是否正确启用和配置了php?
      编辑您的
      /etc/apache2/httpd.conf
      并确保行:
      LoadModule php5\u module libexec/apache2/libphp5.so
      存在,然后重新启动Apache:
      sudo apachectl restart
    • 是否正在加载正确的/预期的
      php.ini
      !!!
      因此,您可能需要重新配置php.ini文件
    • 先前在
      /usr/lib/php/Extensions/../
      下安装的扩展已被删除。
      因此,如果您希望在5.3中仍然使用扩展,则需要重新构建它们
    • 现在可以加载包含
      的phpinfo.php文件了吗
    • 现在检查phpinfo中的mySQL指令(和其他局部变量),如果您使用它的话
    • 苹果已经包括了Suhosin补丁和扩展。
      Suhosin是其中的一部分,旨在保护PHP应用程序免受缓冲区溢出和格式字符串漏洞的影响
    • 是否使用了不推荐使用的php语句(在旧版本的php中工作)

    它现在可以工作了吗?

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


    为了更新到php5.4,我按照这里的说明进行了操作:感谢您的帮助,Stackoverflow!

    如果您转到ajax url(即),页面加载是否正常,或者您是否仍然可以获得源代码。基本上,如果不通过ajax加载,它是否工作?是的,它工作。只有在这台Mac上通过ajax加载时,它才不工作,而这台Mac恰好是运行Lion的,尽管这可能不是相关的区别,当然。谢谢,GitaarLAB,但我仍然是空的。Ack。没有know ReturnKey将提交评论。我已经处理了LoadModule行和重新启动。但是我不知道php.ini的更改。非常有希望!所以我从我的雪豹机器(它工作的地方)复制了php.ini,并重新启动了apache。同样的问题。我可以而且仍然可以通过浏览器加载phpinfo文件。SL机器上的php版本是5.3.8,Lion机器上的php版本是5.3.1,但php脚本做的事情非常简单:逐行读取文件。(还有一堆更复杂的php脚本也被破坏。)尝试重新配置新的php.ini文件,而不是复制/重用“旧”文件。另请参阅关于Suhosin修补程序和已删除扩展的更新答案。您还可以尝试安装普通php 5.3.8(如您的SL机器)在你的Lion机器上,看看情况如何。我担心你会建议:)因为我实际上不知道如何配置php.ini,当我回去工作并将我的机器放在面前时,我会尝试解决它。谢谢你的建议。我将在周一报告。新的php.ini没有任何区别。我无法解决如何解决在今早花了很多时间使用macports之后,升级到5.3.1。