【发布时间】:2012-02-08 10:41:54
【问题描述】:
在 Facebook 应用程序上工作,在 Heroku 上设置,使用 git 下载他们的代码,使用 xampp 用于 apache Web 服务器。必须将 xampp 设置为侦听不同的端口,因为 :80 被占用,所以将 httpd.conf 更改为 Listen 8080 并添加了虚拟主机,这样我就可以根据 Heroku facebook 应用程序的要求设置 facebook 环境变量。为了让 apache 正常运行,发现网站说我还必须在 httpd-ssl.conf 中更改 SSL 的端口。我根据另一个网站的建议将其更改为 4430。 Apache/xampp 现在可以正常启动,但是当我转到 Facebook Heroku 代码时会收到错误消息(无论是通过 apps.facebook.com/myapp 还是直接在 localhost:8080 都会出现相同的错误)错误如下:
Notice: Undefined index: HTTP_X_FORWARDED_PROTO in C:\Users\me\project\index.php on line 4
Notice: Undefined index: HTTP_X_FORWARDED_PROTO in C:\Users\me\project\AppInfo.php on line 36
Notice: Undefined index: HTTP_X_FORWARDED_PROTO in C:\Users\me\project\AppInfo.php on line 36
Notice: Undefined index: access_token in C:\Users\me\project\FBUtils.php on line 108
问题开始的第一个文件的顶行:
<?php
// Enforce https on production
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == "http" && $_SERVER['REMOTE_ADDR'] != '127.0.0.1' && $_SE RVER['REMOTE_ADDR'] != 'localhost') {
header("Location: https://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]);
exit();
}
请注意,此代码由 Heroku/GitHub 在其平台上设置 Facebook 应用程序时提供。除了我列出的那些之外,它似乎还有很多错误。
【问题讨论】:
-
(引用另一个线程的答案)您似乎没有安装 cURL 函数。运行 php_info() 文件并检查是否提及 cURL 函数。链接:stackoverflow.com/questions/8874425/…