我在 hostgator 上使用 wordpress,由于某种原因,根域名指向与www
子域名明显不同的代码。
也就是说:
http://www.domain.com
生产不同于html
:
http://domain.com
然而它们似乎都指向(虽然我不清楚如何在 cPanel 中检查这一点):
/home/me/public_html/domain.com
我寻找并销毁了所有我能找到的缓存。
我将其保留了 12 个小时,以防它是主机的缓存 - 但如果是的话,则尚未刷新任何内容。
它位于 hostgator 上的共享帐户上。
对于测试/检查有什么想法吗?
答案1
“www” 是子域名它可能(也可能不)指向您的(二级)域名指向的同一地址。我似乎记得可以从 cpanel 内部配置重定向,因此您需要做的是将 www.domain.tld 重定向到 domain.tld(反之亦然,具体取决于哪一个显示“正确的”html)。更好的是,您可能希望阅读一些有关 DNS 的内容,并花一些时间了解不同资源记录(RR),尤其是 A 记录。
如果您运行的是 Linux(或者您有 cygwin),您可以随时安装 dnsutils 包,它提供了 dig,而 dig 又是一个非常好的命令行实用程序,可帮助您检索任何所需域的任何 RR。或者您可以使用此处的众多在线 dig 工具之一,例如 kloth.net 的。
答案2
事实证明,问题出在 中的默认设置重写规则上 .htaccess
。无论如何,我都应该在 中设置重写.htaccess
。
感谢您的精彩评论!?flush=me
是一个很好的建议。
为了确保我删除了令人反感的垃圾,添加了重写规则以永久地从非 www 重定向到 www:
# Redirect to www
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
附言:我以前从来不理解关于是否使用 www 的规则,只是习惯于懒惰地同时设置两者。但最近几次,我因为创建了两个不同的会话以及由此造成的混乱而大吃一惊。我现在理解关于只使用 1 个基数 URL 的规则。是否使用 www:只能选择一个。