Apache从http重定向到https

时间:2015-10-19 12:40:06

标签: apache .htaccess redirect virtualhost

我有一个小问题,

我正在使用apache2服务器,我必须将所有http请求重定向到https。

以下是我在VH的conf文件中编写的代码

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

它似乎工作正常,没有任何问题。

现在,问题在于,我们还有一个与我们的服务器通信的移动应用程序。此移动应用程序通过基于REST的POST API进行通信。移动应用程序已经在Play商店中,并且仍然仅通过HTTP与我们的服务器通信。现在,由于此重定向集,服务器将移动请求重定向到Https,但无法传递POST参数。任何人都可以在这里建议我解决方案吗?有没有什么方法我只能重定向Web请求,让来自移动通信的请求只通过http。需要帮助和建议。

1 个答案:

答案 0 :(得分:3)

您可以忽略POST重定向中的http->https方法:

RewriteEngine On

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]