gpt4 book ai didi

php - Facebook 应用程序中的 fatal error : Call to a member function getLongLivedSession() on a non-object

转载 作者:IT王子 更新时间:2023-10-29 00:18:40 25 4
gpt4 key购买 nike

我有一个 PHP 脚本可以在用户的​​ Facebook 页面上发布内容。这可以通过 Facebook 应用程序实现。

当我点击“授权”时,它会加载 10 秒,但不会发布,并且会显示一个包含以下错误的空白页面:

exception Failed to connect to 2a03:2880:f01f:2:face:b00c:0:2: Network is  unreachable Fatal error: Call to a member function getLongLivedSession() on a non-object in /var/zpanel/hostdata/zadmin/public_html/mysite/thirdparty/networks/facebook/Facebook.php on line 92

一周前一切正常,但今天我仍然遇到该错误。这个问题的原因是什么?

最佳答案

许多服务器启用了 IPv6,但它没有路由并且实际上不起作用。当您尝试访问支持 IPv6 的站点时,这会变成一个主要问题。默认情况下,curl 将尝试通过 IPv6 连接并超时。通过 IPv4 它可以工作得很好,只要你添加这个:

curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );

如果您在使用 file_get_contents()get_headers() 等时遇到此问题,您可以在 /etc/sysctl.conf< 中添加以下行 :

#disable ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

或者

echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6

根据您的评论更新:

freebsd 9 中禁用 ipv6

/etc/rc.conf


ipv6_network_interfaces="none" # Default is auto

ipv6_activate_all_interfaces="NO" # this is the default

ip6addrctl_enable="NO" # New way to disable IPv6 support

ip6addrctl_policy="ipv4_prefer" # Use IPv4 instead of IPv6

ipv6_activate_all_interfaces="NO" # Do not automatically add IPv6 addresses

关于php - Facebook 应用程序中的 fatal error : Call to a member function getLongLivedSession() on a non-object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28118047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com