我在ApacheO2.4.18的DigitalOcean(Ubuntu 16.04)中添加了一个example.com域,并在其上安装了Wordpress。该站点运行正常。
问题是,所有请求www.example.com
都重定向到example.com
。我需要example.com
重定向到www.example.com
。
我看到有两种方法可以做到这一点。 1. .htaccess
和2. Apache配置文件,当前使用000-default.conf
文件。我安装了letsencrypt
ssl,它将以下RewriteRule
添加到000-default.conf
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.example.com [OR]
RewriteCond %{SERVER_NAME} =example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
根据在线研究,我确实将000-default.conf
修改为
RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
,还尝试了.htaccess
文件中的以下代码。
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
执行上述任何一项操作时,出现错误multiple redirection loop
。基本上将example.com
重定向到www.example.com
,将www.example.com
重定向到example.com
,依此类推。我在Redirectcheck.com上进行了测试。
主要问题是我似乎找不到第一个301 Redirect
,这是所有被重定向到exmple.com
的请求。如果可以禁用或覆盖主要的301 Redirect
规则,则可以实现将所有请求重定向到www.example.com
的操作。
我做了研究,但是在这里我很难受,任何帮助将不胜感激。谢谢!
答案 0 :(得分:0)
所以,我终于找到了它,所有配置都是正确的,唯一的问题是在WordPress->管理面板->设置->常规中。我将site_url
和main_url
放置为example.com
,当我将其更新为www.example.com
并再次测试时,它确实将其修复。