如何解决:网站被重定向到另一个域?

问题描述 投票:1回答:1

问题:

我的网络托管提供商(apache)支持在一个帐户下拥有多个域,这些域包含wordpress安装,并通过ftp客户端在路径中进行管理:

www/domains/domain1.tld
www/domains/domain2.tld

当我打开https://domain2.tld时,一切都按预期工作。

enter image description here

无论如何..如果我没有指定'https://',那么它将被重定向到https://domain1.tld

enter image description here

我有什么:

www / domains中,我有这个。htaccess文件

RewriteEngine On
# domains
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

# subdomains
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]

# domains proper redirection when / is missing
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

# subdomains proper redirection when / is missing
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

然后在每个WP安装中,我都有wordpress 。htacces文件

# BEGIN WordPress
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301]  
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
  • 我确实检查了数据库和wp-config,它们都不包含指向https://domain1.ltd
  • 两个域都使用Lets Encrypt证书
  • 我使用notepad ++搜索了domain2.ltd本地代码,发现没有domain1.ltd,禁用所有插件都没有帮助

强制https重定向在以下两种情况下均不起作用:

RewriteCond %{HTTP_HOST} ^domain2\.tld [NC]
RewriteRule (.*) https://www.domain2.tld/$1 [R=301,QSA,L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.domain2.tld/$1 [R=301,L]

老实说,我没了下一步的想法。有人知道如何解决这个问题吗?我的猜测是[[www / domains .htaccess文件或Web主机有问题。谢谢你们!

问题:我的虚拟主机提供商(apache)支持在一个帐户下拥有多个域,这些域可组成wordpress安装,并通过ftp客户端在以下路径中进行管理:www / domains / ...

wordpress apache .htaccess http-status-code-301 lets-encrypt
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.