每个网址的https重定向都不起作用

时间:2018-05-11 08:55:22

标签: .htaccess redirect xenforo

在我将网站从服务器成功转移到另一个网站后,我遇到了一个问题(它始终是相同的网址)。基本上我有一个用xenforo创建的论坛,可以在https://forums.mywebsite.com找到。

当然,如果需要,您可以使用您的帐户登录并在浏览器中保存用户名/密码。问题如下:

  • 使用https://forums.mywebsite.com,您仍然会被记录
  • 使用http://forums.mywebsite.com,您必须每次都登录
  • 使用www.forums.mywebsite.com,您必须每次都登录

我想饼干存在问题,因为https的Cookie有效,而有些则没有。我的想法是将每个网址重定向到https网址;这样:

  • 使用https://forums.mywebsite.com>没有变化
  • 使用http://forums.mywebsite.com> https://forums.mywebsite.com
  • 使用www.forums.mywebsite.com> https://forums.mywebsite.com

我真的需要这个并告诉用户只使用https不是一个很好的解决方案,因为总会有人使用http或www。我的想法是:

RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.forums.mywebsite.com%{REQUEST_URI} [R=301,L]

无论如何,当我输入www.forums.mywebsite.com时,我仍然无法重定向到https://forums.mywebsite.com。我是否必须更改任何配置文件?

我正在编辑this .htaccess,可以在系统根目录找到,如您所见(摘自WinSCP)。

enter image description here

1 个答案:

答案 0 :(得分:0)

在Xenforo板上,我需要做同样的事情,将所有内容都重定向到https://example.com,而无需www。

这是我使用的:

#Redirect www and http
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

从来没有像这样的问题。