2016-09-11 9 views
0

Googleのアプリケーション(HTTPS)を使用して、リモートに配置されたWebサービス(HTTP)にajax呼び出しをしようとしています。 しかし、次のエラーが発生しています。ChromeのHTTPS環境でHTTP呼び出しを行う方法

Mixed Content: The page at 'https://test.tes.com/url' was loaded over HTTPS, but requested an insecure script 'http://129.211.25.5:8063/'. This request has been blocked; the content must be served over HTTPS 

クロムブラウザを使用しています。

解決策を検索しようとしましたが、その安全でないコンテンツを書いた場所のほとんどがクロムに​​許可されません。 Internet Explorerではプロンプトが表示され、混在したコンテンツが許可されている場合は、HTTP Webサービスを呼び出すことができます。

解決策は、HTTPからHTTPSコールを置き換えることです。しかし、私のサーバーはHTTPS(SSLが有効になっていない)に設定されていないので、変更することはできません。

私の質問は HTTP環境からのHTTP呼び出しが可能ですか? アストストは、上記のエラーを回避できるようにHTTPコールをバイパスできますか(フィルタなど) またはHTTPS環境に移行する必要がありますか?

+0

「ただし、私のサーバーはHTTPSに設定されていません」 - しかも**あなたはhttpsに**設定されている** **のコードを持っています。あなた? - httpsは簡単ではありません**最近** https://letsencrypt.org/ –

+0

実際に私がwebserviceを呼び出すアプリケーションは、HTTPS envとSSLが有効になっていない別のサーバーにあるwebserviceに設定されています(HTTP)ので、そのような私はアプリケーションのHTTPS環境を使用してHTTP envからコンテンツを取得したい – tkfwr

答えて

-2

(あなたはhtaccessのファイルを使用している場合)ここで、あなたの問題です:

RewriteCond %{SERVER_PORT} ^443$ RewriteRule (.*) http://www.example.com/$1

あなたはSSL要求(443ポート番号はHTTPS要求に使用される)ことはできません。これらの行を削除してみてください。

また、

可能な場合は、その外部のページ/ Webサーバのhttpsバージョンを使用します。

+0

何ですか?彼のサーバーは** HTTPSに設定されていません** - なぜ彼は(存在しない)ポート443をポート80にリダイレクトするのですか? –

1

あなたが持っている解決策2:

  • がサーバーへのHTTPS呼び出しを行う

    • は(https->リダイレクトが解決策ではない、ないと)、HTTPSを許可するようにWebサービスを説得して、

    ユーザー< -https->お使いのS:バックエンドでHTTPリクエストを作成するようにサーバーを構成erver < -http-> the webservice

  • +0

    HTTPSを許可するwebserviceを作ることは、私が得た1つの解決策です。しかし、サーバーにアクセスできない場合は、どちらのアプリケーションにもアクセスできません。これが起こるようにする方法はありますか?たとえば、クロスドメインコールの場合と同様にフィルタを追加するので、アプリケーションレベルでこの種の変更を行うことはできず、この呼び出しを行うことができますか?私はそれを探してみましたが、HTTPSを持つことは何も見つからなかったし、それは唯一の解決策でしたか? – tkfwr

    +0

    httpsウェブページからhttp ajaxを呼び出すことはできません。 – Tom

    関連する問題