我想在地址栏中显示不同的URL,而不是实际的URL。
我正在使用此示例
function init() {
document.getElementById("test").onclick = function(e) {
jx("counter.php?url=" + escape("http://www.google.com/")); //Use your favorite ajax library here.
}
}
window.onload = init;
<a href="http://www.google.com/" id="test">Go To Google</a>
我的counter.php就是这样
<?php
header("Location: " . $_GET['http://www.hotmail.com']);
?>
答案 0 :(得分:2)
我想在地址栏中显示不同的URL,而不是实际的URL。
通常:您不能。
The History API允许您操纵历史记录以显示不同的URL,而无需更改页面……但是只能在相同的来源中进行。 (因此,您可能在http://example.com/
上,但显示http://example.com/other
而不是http://example.net/
)。
这是为了使大量Ajaxy网站在生成客户端页面时可以具有用于不同“页面”的真实URL。目的是当直接访问URL或由不支持JavaScript的客户端访问URL时,可以在服务器端生成相同的页面。这样可以提供搜索引擎友好的可访问内容,并在客户端允许的情况下提高性能,同时在网站内的页面之间进行导航。
一个URL可能与另一个URL提供相同的内容。这可以是简单的静态副本,也可以使用服务器端代码(如果是the CORS policy allows it,则可以动态拉出)。
当然,在复制内容时,所有相对URL都需要更新,否则它们就会中断。
自然,您不能使用它来使http://www.google.com/
显示与http://www.hotmail.com
相同的内容:您无法控制http://www.google.com
,因此无法更改其提供的内容。