HTTP请求已被阻止; 内容必须通过HTTPS提供

Par*_*ami 4 .htaccess https web-services http angularjs

我遇到问题,调用通过HTTP托管的Web服务,我从https域调用Web服务.

网络服务的htaccess

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ %{ENV:BASE}index.php [QSA,L]
Run Code Online (Sandbox Code Playgroud)

当我试图呼叫网络时,我在控制台中出现以下错误.

angular.min.js:93 Mixed Content: The page at 'https://www.<my-domain.com>/#/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://<api url goes here>'. This request has been blocked; the content must be served over HTTPS.
Run Code Online (Sandbox Code Playgroud)

注意

Web服务托管在仅限http的aws服务器中.我的网站托管给其他托管服务提供商.

Tom*_*Tom 8

您无法从安全(https)源获取不安全(http)资源.

它被称为混合内容,浏览器出于安全原因阻止它.(它可能允许像图像这样的被动内容,通常带有警告)

你可以做什么:

  • 向网络服务解释https的优点
  • 通过您的服务器代理Web服务的答案

  • 我做了其他php文件,其中有curl代码,这是调用我的aws web服务和我的角度JS调用新创建的php文件. (2认同)
  • @PareshGami由于我的解决方案适合您,您可以验证我的答案吗?请记住,服务器和Web服务之间的连接不安全。因此,它不能被信任。如果您成功说服他们切换到https,则对每个人来说都将更加安全! (2认同)