1

我无法在 Facebook 上发布任何图片或其他媒体。我使用了调试器(http://developers.facebook.com/tools/debug),我总是得到:

Scrape Information
Response Code:  502

我将 nginx 1.2.0 与 php-fpm 与 sock not port (9000) 一起使用我的错误日志没有显示任何错误。访问日志

69.171.237.14 - - [23/Mar/2013:19:00:29 +0100] "GET /video/X1KAW64412WH1OO/5123 HTTP/1.1" 200 11715 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"

目前我已经禁用了 IPtables。php.ini 和大多数超时设置为 3600

nginx.conf 部分:

    location ~ \.php$ {
        root           /home/blabla/www;
       # fastcgi_pass   127.0.0.1:9000;
        try_files $uri =404;
        fastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME  /home/blabla/blabla/$fastcgi_script_name;
       # fastcgi_param  REQUEST_URI      $request_uri;
        #fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
            access_log  logs/access._php.log  main;
 fastcgi_send_timeout  5m;
 fastcgi_read_timeout 5m;
 fastcgi_connect_timeout 5m; }

我已经使用 cloudflare 服务进行了测试,效果很好,但是当我只指向我的服务器时,它就停止了。它发生在我位于这台机器上的所有其他网站上,所以我猜它一定是网络服务器配置问题。我用centos x64

4

2 回答 2

1

我遇到了同样的问题。

我的 nginx 日志表明正在提供 200 响应,并且浏览器中的请求显示 200 响应。Facebook 坚持认为这是一个 502 错误。

事实证明,“502”可能意味着“您的服务器返回 502”“我在解析响应时遇到了困难”。

在我的例子中,我有一个不合规的 HTTP 标头(它包含一个问号),这导致 Facebook 拒绝响应无效。删除此标头解决了该问题。

于 2013-04-09T14:44:59.113 回答
0

Facebook 默认使用 ipv6 地址(如果可用)要解决此问题,您必须在 Ningx 配置文件中为每个虚拟主机(如果托管许多站点)启用 iPv6 以侦听端口 80 上的任何 IPv6 地址。这将解决 Facebook opengraph 的问题。

于 2014-05-17T11:50:57.087 回答