假设我的浏览器位置栏中有一个URL:
http://www.example.com/us/books
...如何在网页中对网址进行编码,以便将它添加到位置栏中的地址?
示例
位置栏中的网址:http://www.example.com/us/books
网页上的网址:<a href="./this-title">Read more</a>
所需
http://www.example.com/us/books/this-title
无论我做什么,它都不会出现在整个网址之后。该URL未修复。
答案 0 :(得分:1)
这种在引用中使用相对路径的方法确实有效。但你必须弄清楚一些取决于你当地情况的细节。
在您的情况下,最有可能的目标网址是http://www.example.com/us/this-title
(您没有告诉我们......)。这是因为浏览器(而不是服务器!)如何解释其在服务器上的文档层次结构中的当前位置。
如果您的基本网址显示http://www.example.com/us/books/
(请注意尾随“/”),那么事情会按照您的预期运作!您甚至可以将相对路径记为<a href="this-title">Read more</a>
。这是有效的,因为浏览器将当前位置识别为文件夹,并假设相对路径位于内部。这适用于例如当持有该引用的html页面由服务器上的索引文档(index.html,index.php或类似文件)传递时。这是尾随斜杠有意义的时候,因为它表示当前url检索到文件夹的内容,而不是directoy。
当然,这只是客户端发生的事情。可能是服务器决定重写URL并再次重定向浏览器。例如,通过在http服务器中使用重写规则。通常这样做是为了处理对非现有文档的请求。