在Heroku上設置的Facebook應用上使用git下載他們的代碼,使用Apache Web服務器的xampp。必須將xampp設置爲在不同的端口上進行監聽,因爲:80被採用,因此將httpd.conf更改爲Listen 8080並添加了虛擬主機,以便根據Heroku Facebook應用程序的要求設置facebook環境變量。爲了讓Apache運行沒有錯誤,發現網站聲明我也必須在httpd-ssl.conf中更改SSL的端口。根據另一個網站的建議,我將其更改爲4430。 Apache/xampp現在啓動正常,但是當我進入它時(通過apps.facebook.com/myapp或直接在localhost:8080發生同樣的錯誤),我會收到來自Facebook Heroku代碼的錯誤消息:注意:未定義的索引:第4行的C: Users me project index.php中的HTTP_X_FORWARDED_PROTO
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函數。鏈接:http://stackoverflow.com/questions/8874425/500-error-developing-heroku-php-facebook-app-locally – 2012-01-26 07:08:55