我最近遇到这个问题,我已经将我的域转发到托管在我的GoDaddy共享托管上的一个文件。但是,每当我在浏览器中点击域名时,它会指向相应的文件(.html)以及前面的垃圾字符。
例子:
www.domainname.info
导致:
https://www.mydomainname.in/coffee.html/NjSmZ/KiKgZ/
结果:
找不到错误404页。
没有更改任何代码;这是一种突然的行为。
更新(更多信息):
NjSmZ/KiKgZ/
是链接中的垃圾字符。转发是通过GoDaddy域转发器本身进行的。未对转发进行外部编码。www.Aitb.in
是转发到advity.in/adarsha.html
的域。 最佳答案
虽然我不知道GoDaddy如何在内部转发其域,但它似乎不是一个简单的DNS CNAME,因为在当前域的查找中没有显示任何内容。
在浏览转发域的响应时,我看到它提供了一个301(永久移动)http响应。响应用新域替换所选域,并保持URL的路径部分不变。
考虑域。a是转发域,域。b是新域,这意味着:
http://domain.a/ => http://domain.b/
http://domain.a/contact.html => http://domain.b/contact.html
http://domain.a/a/long/path/ => http://domain.b/a/long/path/
但在你的情况下,你转发到的不仅仅是一个域名。。。domain.b更像domain.b/coffee.html,遵循相同的规则,这意味着:
http://domain.a/ => http://domain.b/coffee.html
http://domain.a/contact.html => http://domain.b/coffee.html/contact.html
http://domain.a/a/long/path/ => http://domain.b/coffee.html/a/long/path/
所以,我的建议是,要么使用更好的登录url_将重定向的路径重写为正确的路径。或者,如果你不能,你可以尝试添加一个?或者在你的网址末尾。这纯粹是猜测,但如果重写没有其他隐藏规则,这将给出如下内容,这将提出适当的请求并“隐藏”垃圾部分。
http://domain.a/ => http://domain.b/coffee.html?
http://domain.a/contact.html => http://domain.b/coffee.html?/contact.html
http://domain.a/a/long/path/ => http://domain.b/coffee.html?/a/long/path/
关于html - 域转发时URL中的垃圾字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46038158/