2011-01-04 11 views
2

PHPで開発されたFacebookのアプリを終了して、今では無料のWebホストを探していますが、何人かのグーグルの後に、 Google App Engineの(GAE)で成功アプリケーションは、しかし、私はこれらのページGoogle App EngineのFacebookアプリケーション(PHPベース)

http://raivoratsep.com/42/running-quercus-php-on-app-engine/ http://php-apps.appspot.com/

上のステップを実行した後、私はいくつかの基本的なPHPスクリプトを実行することができますしかし、facebook.php(require 'facebook.php')を含めてfacebookで動かすと、何か間違ったことが起きたようです。何も表示されません。

誰かがPHPでGAEのfacebookでの経験がある場合は助けてください。

ありがとうございます〜!

YK

答えて

2

ずっとあなたが現時点ではPHPでGAEで行うことができますありません。無料の代替はのために行くことです。

彼らは無料でご提供:

  • MySQLのサポート
  • FTP
  • SVN
  • ともっとたくさん。 ..
+0

大変ありがとうございます。 – ykc

+0

@facebook:ようこそ:) – Sarfraz

1

設定すると、エラーが発生する可能性があります。

error_reporting(E_ALL);ini_set( 'display_errors'、1);

あなたのスクリプトのどこかに。

+0

ありがとう、私はそれを試してみましょう、しかし私はGAEをあきらめて、今Kodingenを使用しています:) – ykc

+0

Kodingenはかなりクールです!私のアカウントもそこに作ったよ:) –

1

私は、GAE上のPHPで1つの問題しか追跡していませんでしたが、これは実際には非常に一般的です。それはカールのhttpsコールをサポートしません。

これは、Google OpenID [1]やFacebook sdkの呼び出しがhttpsにリダイレクトされるなど、URLをhttpに変更すると簡単に解決されることがよくあります。だから、Facebookのクラスのためのクイックフィックスは、[2]あなたは_graph法にスローされた例外をピックアップし、

を追加する必要があります。httpに$ DOMAIN_MAP HTTPSを変更したり、それに加えてgetUrlメソッド

$url = str_replace('https://', 'http://', self::$DOMAIN_MAP[$name]); 

上の文字列を置き換えるのいずれかにあります

if ((string)$e == 'OAuthException: You must use https:// when passing an access token') return $result; 

before throw $ e;

場合によっては、$ _SERVER ['HTTPS'] = 'off'を設定する必要があります。しかし、私はまだFacebookが提供するすべての単体テストを実行することはできません...

あなたは、あなたがPHPスクリプトでJavaとURLFetchのトリックを使用することができCURLを使用するように強制されていない場合:それはカールが提供する膨大な機能のリストを欠いたが、単純な場合に適しています

import java.net.URL; 
define('URLFetchServiceFactory', new Java('com.google.appengine.api.urlfetch.URLFetchServiceFactory')); 
echo URLFetchServiceFactory->getURLFetchService()->fetch(new URL('https://www.google.com/'))->getContent(); 

0

はい、あなたはGAEからそれを使用します。

SDKのこのブランチを使用するだけで、httpストリームの場合はCURLを使用する必要があります。

https://github.com/camfitz/facebook-php-sdk

私はそれを使用し、正常に動作しています!