1

Facebook api を使用して、自分の Web サイトが Facebook でログインできるようにしたいと考えています。正常に動作していましたが、エラー メッセージが表示されます。エラーログを確認すると、表示されます

[Thu May 31 17:10:53 2012] [error] [client 114.34.249.224] PHP Fatal error: Uncaught CurlException: 7: Failed to connect to 2a03:2880:2110:3f01:face:b00c:0:1: いいえ/home/fb3/src/base_facebook.php 行 886 でスローされたホストへのルート\n

どうすれば問題を解決できますか?

ありがとう。

アップデート:

私のルーティングテーブルには inet6 も含まれていませんでした:

インターネット: 宛先ゲートウェイ フラグ Refs Use Netif Expire

デフォルト xxx.xxx.xxx.xxx UGS 57 1209297 bge0

127.0.0.1 リンク#2 UH 0 17 lo0

xxx.xxx.xxx.xxx/24 リンク#1 U 0 24067 bge0

xxx.xxx.xxx.xxx リンク#1 UHS 0 192 lo0

インターネット6:

宛先ゲートウェイ フラグ Netif 期限切れ

::1 ::1 UH lo0

fe80::%lo0/64 link#2 U lo0

fe80::1%lo0 リンク#2 UHS lo0

ff01:2::/32 fe80::1%lo0 U lo0

ff02::%lo0/32 fe80::1%lo0 U

そして私のinet4設定: $ more rc.conf

-- sysinstall によって生成されたデルタ -- # Tue Jul 13 18:02:58 2010 Created: Tue Jul 13 18:02:58 2010 ユーザーの利便性のためにネットワーク デーモンを有効にします。/etc/defaults/rc.conf ではなく、このファイルにすべての変更を加えてください。このファイルには、/etc/defaults/rc.conf からのオーバーライドのみが含まれるようになりました。

keymap="us.iso"

defaultrouter="xxx.xxx.xxx.xxx"

ホスト名="domain.com"

ifconfig_bge0="inet xxx.xxx.xxx.xxx ネットマスク 255.255.255.0"

sshd_enable="はい"

apache22_enable="はい"

mysql_enable="はい"

sendmail_enable="なし"

proftpd_enable="はい"

named_enable="はい"

4

2 に答える 2

0

Facebook にアクセスするために IPv6 アドレスを使用しようとしているようですが、途中で IPv6 が正しく設定されていません。

簡単な手動のハックとして、スクリプトでgraph.facebook.comへの参照を見つけ、graph.facebook.comのIPv4(xxx.xxx.xxx.xxx)アドレスとしてすばやくハードコーディングします。これが機能する場合は、スクリプトを元に戻し、次のいずれかを行います。

  1. サーバーに IPv4 のみを実行させる (最も簡単ですが、前向きではありません)
  2. あなたとサーバーの間のどのハードウェアがIPv6構成されていないかを確認し、それを変更してください(思ったよりもはるかに難しいです-おそらくどこかに新しいルーターを意味しますが、これを行わないと、サーバーにIPv6を使用しても意味がありません! )。
于 2012-05-31T11:54:33.760 に答える
0

Linux を実行している場合、IPv6 カーネル モジュールがロードされている可能性があります。これがロードされているため、DNS 要求を行うと、最初に IPv4 アドレスが返され、次に IPv6 アドレスが返されます。何らかの理由で IPv4 への接続に失敗した場合、システムは次のアドレスを試行します。これは IPv6 であり、IPv6 接続がないため、上記のエラーが発生します。

于 2012-06-03T01:31:30.373 に答える