次の問題を解決しようとしています。
有効なワイルドカード SSL 証明書を使用して、運用サーバーに IIS があります。somedomain.com:80 と somedomain.com:443 の両方にバインドされているサイト。
また、サイトからデータを取得する Python (2.6.4) アプリケーションがあります。
Require SSL IIS オプションをチェックするまで、何の問題もありませんでした。その後、次のトラブルが発生しました。
import requests
r = requests.get('https://somedomain.com/api/list')
403 エラーを返します。
urllib2、httplib2 では、このようなことが起こります。
しかし!最も奇妙なこと:
import httplib
con = httplib.HTTPSConnection('somedomain.com')
con.request('GET', '/api/list')
r1 = con.getresponse()
それはうまくフォークします!ステータス コード 200 で正しいデータを返します。
それは何でしょうか?
もちろん、ブラウザ (Chrome、Epiphany) は開発ホストで問題なく動作します。