2012-11-12 168 views
0

我想在登录页面时将我的应用程序的用户重定向到HTTPS协议。网址是那种:http to https重定向登录页面

http://localhost/default/Login 

我已经在我的Apache的conf文件书面重写规则如下(请注意,我想从的conf文件,而不是从的.htaccess做)

RewriteEngine on 
RewriteCond %{HTTPS} !=on 
RewriteRule ^/Login$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

此重定向不起作用,我无法找出原因。也尝试了打印重写日志,但无法从中进行调试。

请让我知道我做错了什么。

回答

0
RewriteCond %{HTTPS} off 
RewriteCond %{REQUEST_URI} Login [NC] 
RewriteRule $ https://%{HTTP_HOST}%{REQUEST_URI} [L,R] 

此规则解决我的问题,请参见Link。发现^是为URL的开始。

-1

尝试将下面的代码添加到您的httpd.conf文件中。

Redirect permanent/https://localhost/default/Login 

完全说明

+0

它不会将所有URL重定向到https登录页面??。我只是想将我的登录页面重定向到https,另一个页面应该在http上运行。 – Ankit

+0

它只应将该URI发送到https :,而不是整个域。 –

+0

以及它将如何检测到它是登录URI而不是其他任何?如果您将其写入conf文件(在您的虚拟域下),RedirectPermanent会重定向整个域URL。 – Ankit