通过httpd.conf将登录页面从HTTP重定向到HTTPS

时间:2013-09-11 01:36:08

标签: apache http ssl https apache2

我希望键入login.abcde.com的用户重定向到https://client1.abcde.com并阻止所有其他HTTP网址。因此,如果某人键入http://client1.abcde.com/thispage/isawesome.html,它将显示一些错误消息或404.到目前为止,我尝试将以下内容添加到我的httpd.conf中,但没有成功。我一直得到Apache页面说:This page is used to test the proper operation of the Apache HTTP server after it has been installed. If you can read this page, it means that the web server installed at this site is working properly, but has not yet been configured.

  

上的RewriteEngine      

RewriteCond%{HTTPS} off

     

RewriteRule ^ client1.abcde.com $ https://client1.abcde.com [L,R = 301]

我正在使用Apache,使用WSGI。我的端口80的虚拟主机基本上只是:

<VirtualHost *:80>
ServerAdmin abisson@abcde.com
DocumentRoot /srv/www/abcde/html

ErrorLog "logs/error_log"
CustomLog "logs/access_log" common

</VirtualHost>

1 个答案:

答案 0 :(得分:0)

由于还没有其他人回复,我会尝试一下,这是未经测试的,但也许会给你一些关于如何继续的想法。也许这可行:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^login\.abcde\.com
RewriteCond %{REQUEST_URI} ^\/$
RewriteRule ^/(.+)$ https://client1.abcde.com/$1 [L,R]

RewriteCond %{HTTP_HOST} ^login\.abcde\.com
RewriteCond ${HTTPS} !=on
RewriteRule ^/(.+)$ [F]

在您的^client1.abcde.com$中,您看起来似乎^login.abcde.com$而不是RewriteRule,但不确定更改它是否会使您的解决方案有效。

也许您可以按照此RedirectSSL维基页面中的说明在VirtualHost中进行重定向?