如何在本地调试Facebook PHP应用程序?

如何在本地调试Facebook PHP应用程序?,php,facebook,zend-framework,Php,Facebook,Zend Framework,我正在使用Zend debugger和PDT进行PHP开发,在调试Facebook PHP时遇到了一个问题。我正在使用SDK中的example.php进行测试。该应用程序在Facebook上运行良好,但设置断点时遇到问题。我试过: 从Eclipse运行-应用程序未按预期运行。虽然我可以设置断点并进行调试,但我得到了$\u服务器['HTTP\u主机']和$\u服务器['REQUEST\u URI']的空值 从Facebook运行-应用程序按预期运行,但忽略断点 我正在使用DNS查找,并已更改主机文

我正在使用Zend debugger和PDT进行PHP开发,在调试Facebook PHP时遇到了一个问题。我正在使用SDK中的example.php进行测试。该应用程序在Facebook上运行良好,但设置断点时遇到问题。我试过:

  • 从Eclipse运行-应用程序未按预期运行。虽然我可以设置断点并进行调试,但我得到了
    $\u服务器['HTTP\u主机']
    $\u服务器['REQUEST\u URI']
    的空值

  • 从Facebook运行-应用程序按预期运行,但忽略断点

  • 我正在使用DNS查找,并已更改主机文件以将URL重定向到本地主机


    我甚至不确定#1是否可行,但使用Eclipse会很好,不必像#2那样刷新网页。有什么想法吗?

    尝试在操作系统中为本地服务器定义本地域(在Windows中,您可以在
    C:\Windows\System32\drivers\etc
    中找到它)

    例如,如果您的服务器在
    localhost
    上运行,请添加以下行:

    local.mydomain.com 127.0.0.1
    
    在Facebook开发者网站(在应用程序设置中),将应用程序的域设置为
    local.mydomain.com
    mydomain.com
    ,并为画布URL(如果您在Facebook画布中工作)设置应用程序的本地URL

    例如:

    Canvas URL: http://local.mydomain.com/my_application/index.php
    

    最后,更改特定页面的调试URL(在Eclipse的菜单Run*中)→ 调试配置)到画布的URL(例如,
    http://apps.facebook.com/my_fb_app/
    )。

    Facebook可能提供了$\u SERVER['HTTP\u HOST']和$\u SERVER['REQUEST\u URI']值,因此这将是您的主要问题。似乎#1不起作用。是否有人能够从浏览器启动php Facebook应用程序,并使用zend debugger在本地计算机上达到断点?如果不是的话,开发人员是如何调试Facebook php代码的?我做了以下几点来调试工作。1) 在eclipse调试配置中,所有facebook开发人员设置都保留为my.domain.com 2)将根服务器更改为。在调试配置中单击test debugger会返回一个错误,即未找到dummy.php,但启动应用程序并命中断点会起作用。