[元の質問: ios API リンクがタイムアウトを続ける]
私は API 開発者ですが、オンラインで API をテストする場合は問題ありません。
しかし、IOS 側の開発者は、NSURLCONNECTION リクエストがタイムアウトのため応答を取得できないというエラーを報告しました。
そして、他の httpsrestAPI をリクエストすると、応答を得ることができます。
すみません: この問題はサーバーの問題ですか、それとも IOS 開発者の問題ですか?
【補足説明】
もう一度見てみると、Safari ではこの Web サイトを開くことができませんでしたが、Chrome では開くことができました。
サーバーに ping できるのですが、理由は何ですか?
【補足説明】
最近発見された問題:
https://www.demo.com/index2.php にはアクセスできませんが、https://www.demo.com/index2.html にはアクセスできます
私のサーバー構成はlanmp、nginxプロキシからApacheです
nginx-1.10.2
apache2.4
nginx に設定ミスはありますか?多くの情報を確認しましたが、http2 が原因であるという情報もあれば、SSL が原因であるという情報もありました。
[補充]
Apache と nginx の両方のログがあります。これは関連する Web サイトのログの一部です
apache: すべてのリクエストは 200 (iPhone safari を使用)
nginx: 200
も
[半日近く探した結果、ついに解決策を見つけました]
問題の原因: nginx のプロキシ構成の問題により、HTTP2 リクエストが応答を正しく取得できません。
これは、Apache への nginx プロキシの問題です。 nginx1.9+.x/apache2.4 プロキシにはこの問題があります。
解決策は、nginx プロキシを構成することです:
proxy_hide_header アップグレード;
この問題は nginx で議論されました: https://trac.nginx.org/nginx/...
【「アップグレード」ヘッダーは h2 上でプロキシされるべきではありません】
検証に支払いが必要な https でない限り、iOS に証明書を渡す必要はありません
さらに、他の端末でも実行できる場合、通常はサーバー側の問題ではありません。
しかし、Tomcat の設定に何か問題があると思います、