2016-07-08 8 views
2

私はセットアップ正常に動作し、リバースプロキシがあります。次のようにセットアップされCloudFlareの+リバースプロキシ - 理由はSEOのエラー1000年

1)Herokuのでホストhttp://www.example.com(Node.jsの)

2)http://blog.example.comのGoDaddyでホスト(ワードプレス)

3) V訪問者はhttp://www.example.com/blogにアクセスしますhttp://blog.example.comから内容を取得します。

これは、私はまた、プロキシが人気nodejitsu HTT-プロキシとhttpProxyRulesモジュールで作業している)の罰金と1で動作します:

// Set up proxy rules instance 
var proxyRules = new httpProxyRules({ 
    rules: { 
     '.*/blog': 'https://blog.example.com', // Rule (1) 
    }, 
    default: 'https://www.example.com' // default target 
}); 

// Create reverse proxy instance 
var proxy = httpProxy.createProxy(); 

// Create http server that leverages reverse proxy instance 
// and proxy rules to proxy requests to different targets 
http.createServer(function(req, res) { 
    // a match method is exposed on the proxy rules instance 
    // to test a request to see if it matches against one of the specified rules 
    var target = proxyRules.match(req); 
    if (target) { 
     return proxy.web(req, res, { 
     target: target, 
     changeOrigin: true, 
     }); 
    } 

    res.writeHead(500, { 'Content-Type': 'text/plain' }); 
    res.end('The request url and path did not match any of the listed rules!'); 

}).listen(6010); 

は、それから私は、私は、HTTPSを持つことができるようにCloudFlareのSSL証明書を追加してみました。私はCloudflareが逆プロキシとして機能することを知っています。だから私はセットアップで1、2)(Cloudflareのリバースプロキシ)と3)(私のカスタムリバースプロキシ)の3つのリバースプロキシを持っています。

別に、1)と2)の両方がhttpsで正常に機能しました。しかし、3)壊れた。 3については

)、私はエラー得続ける:

エラー1000年 - 禁止IPにDNSポイントを

で起こっているとどのように私はこの問題を解決するために進むべきか?

答えて

3

したがって、CloudFlare DNSをゾーンファイル内の別のプロキシに指定しています。 CloudFlareもリバースプロキシであるため、enabling a proxy on a record may create a cyclic loopです。

これを解決するには、Node.jsプロキシが理想的には起点Webサーバーを指し、CloudFlareを経由しないことが理想的です。スクリプトを更新したくない場合は、サーバー上で、プロキシを実行するWebサーバー上のhostsファイルを更新して、オリジンに直接ルートを追加することができます。

+0

こんにちはmjsaについて、「あなたのNode.jsプロキシは理想的には起点のWebサーバーを指し、CloudFlareを経由しないでください。 node.jsリバースプロキシスクリプトを変更することで、どうすればよいのですか? – user1347271

+0

スクリプトをホストしているサーバー上の/ etc/hostsファイルを変更して、これらのドメインがオリジンサーバーを直接指すようにします。それ以外の場合は、スクリプトのドメイン名の代わりにオリジンサーバーにIPアドレスを使用できます。 – mjsa

関連する問題