我在GitHub(gh-pages)上托管了几个静态网页。如果用户尝试访问不可用的页面,则会将他/她移至自定义404.html。
我想知道的是,是否可以使用JavaScript从自定义404.html访问原始请求的网址?没有PHP或任何其他服务器端技术。
我查看了JavaScript's Location-object,但似乎只能访问当前网址(在本例中为404.html),而不是原始请求的网址。我想要实现的是一个404.html,它向用户提供了“你是否意味着访问URL ...”这样的建议,但为了这样做,我需要访问原始URL。
答案 0 :(得分:1)
你唯一的希望是document.referrer
但当然GH需要设置它,这对于任何从请求中返回HTTP 404的页面都不太可能......
答案 1 :(得分:0)
您需要查看document.referrer
答案 2 :(得分:0)
由于服务器将用户移动到404页面,因此JavaScript无法知道所请求的URL。 如果您添加.htaccess以将用户重定向到包含url:page.php?url = requested_url的页面,则可能是可能的,然后requested_url出现在地址栏中,可以通过javascript读取。
答案 3 :(得分:0)
我已经使用自定义域进行了测试,location.href
实际上会提供当前网址,在这种情况下是错误网址。因此,虽然document.referrer
只会提供空字符串,但location.href
会提供您想要的网址。
我想知道这是否与您托管的GH页面有关,以及您是否使用自定义域名。但是,我的理解是,只能使用自定义域投放自定义404.html。