最近我购买了 SSL ,并使用 将服务器上的所有请求从 http 重定向到 https 。 htaccess
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
但是,我的 iOS 和 Android 应用程序已经从 Alamofire 网络库中请求来自 http 的服务,所以它显示以下错误
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
<head>
<title>302 Found</title>
</head>
<body>
<h1>Found</h1>
<p>The document has moved
<a href="https://api.example.com/webservices/v1/services.php">here</a>.
</p>
</body>
</html>
我知道 301 和 302 是重定向错误,但网络服务显示来自浏览器的正确数据。来自应用程序的请求不起作用。
即使发生重定向也能接收正确 JSON 数据的任何解决方案。
请提出建议。任何帮助表示赞赏。
PS:还有其他原因我无法在应用程序中更改请求。
Best Answer-推荐答案 strong>
试试这个:
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
这会将 301 重定向添加到 .htaccess 。
所以,完整的代码是:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
关于php - 使用 Alamofire 请求 Web api 时出现重定向错误 301 和 302,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/48545840/
|