1

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

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

  • https://forums.mywebsite.com你仍然登录
  • 每次http://forums.mywebsite.com都必须登录
  • 每次www.forums.mywebsite.com都必须登录

我猜cookies有问题,因为cookies可以https工作,而其他cookies不能。我的想法是将每个 url 重定向到 https url;所以:

  • 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。我必须更改任何配置文件吗?


我正在编辑这个可以在系统根目录找到的 .htaccess,如您在此处所见(取自 WinSCP)。

在此处输入图像描述

4

1 回答 1

1

在我的 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]

从来没有遇到过这样的问题。

于 2019-05-28T03:32:36.820 回答