facebook 502 nginx + fpm

时间:2013-03-23 18:09:38

标签: facebook nginx php

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

Scrape Information
Response Code:  502

我使用带有php-fpm的nginx 1.2.0和sock而不是端口(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 part:

    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

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。

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

事实证明'502'可能意味着'你的服务器返回了502''我遇到了解析响应的困难'。

在我的情况下,我有一个不合规的HTTP标头(它带有一个问号),这导致Facebook拒绝该响应无效。删除此标题可解决此问题。

答案 1 :(得分:0)

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