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

标签 apache http ssl https apache2

我希望将键入 login.abcde.com 的用户重定向到 https://client1.abcde.com 并阻止所有其他 HTTP URL。所以如果有人输入 http://client1.abcde.com/thispage/isawesome.html ,它会显示一些错误消息或 404。到目前为止,我尝试将以下内容添加到我的 httpd.conf,但没有成功。我不断收到 Apache 页面说:此页面用于测试 Apache HTTP 服务器在安装后是否正常运行。如果您可以阅读此页面,则表示此站点安装的 Web 服务器工作正常,但尚未配置。

RewriteEngine on

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>

最佳答案

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

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 ,不确定更改它是否会使您的解决方案起作用。

也许您可以在 VirtualHost 中进行重定向如本 RedirectSSL 中所述维基页面?

关于apache - 通过 httpd.conf 将登录页面从 HTTP 重定向到 HTTPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18731348/

相关文章:

ruby-on-rails - Apache 对 POST 请求大小的限制

apache - Adobe 媒体服务器和 TLS 1.2

python - 为什么我无法使用 Google Map api 获取完整数据?

c++ - Firefox 在使用 https 异常时重定向我

php - 通过 PHP Mailer 使用 Gmail SMTP 服务器从网站发送电子邮件

wcf - 自承载 WCF 数据服务上的 Kerberos 身份验证

php - UTF-8贯穿始终

php - SSL 到非 SSL htaccess 重定向的问题

java - 没有数据时应该返回哪个http代码

java - 如何使用 Java 套接字 HTTP/1.1 请求下载图像?