有小的澄清,
据我所知,这些是相对路径和绝对路径,
Completely relative: <img src="kitten.png"/>
Absolute in all respects: <img src="http://www.foo.com/images/kitten.png">
相对路径和绝对路径有什么区别?
使用这些路径是否会出现任何性能问题?
我们会为网站提供任何安全保障吗?
有没有办法将绝对路径转换为相对路径
有小的澄清,
据我所知,这些是相对路径和绝对路径,
Completely relative: <img src="kitten.png"/>
Absolute in all respects: <img src="http://www.foo.com/images/kitten.png">
相对路径和绝对路径有什么区别?
使用这些路径是否会出现任何性能问题?
我们会为网站提供任何安全保障吗?
有没有办法将绝对路径转换为相对路径
引用根目录的路径称为绝对路径。参考当前目录的路径称为relative。
相对路径和绝对路径有什么区别?
必须相对于另一个 URI 计算一个。另一个没有。
使用这些路径是否会出现任何性能问题?
没什么大不了的。
我们将获得任何安全的网站?
不
有没有办法将绝对路径转换为相对路径
用真正简化的术语来说:从左到右工作,尝试将方案、主机名和路径段与您尝试与之相关的 URI 匹配。当你有比赛时停下来。
完全相对:
<img src="kitten.png"/>
这确实是一条相对路径。
各方面绝对:
<img src="http://www.foo.com/images/kitten.png"/>
这是一个URL,在某种程度上可以看作是一个绝对路径,但它不代表这件事。
相对路径和绝对路径之间的区别在于,使用相对路径时,您将当前工作目录作为参考,而使用绝对路径时,您将参考某个众所周知的目录。当您制作某些程序必须使用某些文件夹中的资源时,相对路径很有用,这些文件夹可以使用工作目录作为起点打开。
相对路径示例:
image.png
, 相当于.\image.png
(在 Windows 中)或./image.png
(在其他任何地方)。在.
明确指定要表达相对于当前工作目录的路径,但每当路径,这是暗示不会在根目录下(以斜线表示)开始,所以你不必一定使用它(除非在某些情况下会应用默认目录(或要搜索的目录列表),除非您明确指定某个目录)。
..\images\image2.jpg
通过这种方式,您可以从文件夹树上一级的目录访问资源。这..\
意味着您已退出当前文件夹,进入包含工作images
文件夹和文件夹的目录。同样,\
在 Windows 和/
其他任何地方使用。
绝对路径示例:
D:\documents\something.doc
E:\music\good_music.mp3
等等。
相对路径
相对路径假定文件在当前服务器上。使用相对路径允许您离线构建站点并在上传之前对其进行全面测试。
例如:
php/webct/itr/index.php
.
绝对路径
绝对路径是指 Internet 上使用其完整 URL 的文件。绝对路径告诉浏览器准确的去向。
例如:
http://www.uvsc.edu/disted/php/webct/itr/index.php
绝对路径更易于使用和理解。但是,这在您自己的网站上并不是一个好习惯。一方面,使用相对路径允许您离线构建站点并在上传之前对其进行全面测试。如果要使用绝对路径,则必须在上传代码之前更改代码才能使其正常工作。如果您不得不移动站点或更改域名,情况也会如此。
参考:http : //openhighschoolcourses.org/mod/book/tool/print/index.php?id=12503
想象一下,您http://www.foo.com/bar/page.html
在所有这些(HTML、Javascript 和 CSS)中都打开了一个窗口:
opened_url = http://www.foo.com/bar/page.html
base_path = http://www.foo.com/bar/
home_path = http://www.foo.com/
/kitten.png = Home_path/kitten.png
kitten.png = Base_path/kitten.png
在 HTML 和 Javascript 中,base_path 基于打开的窗口。在大型 javascript 项目中,您偶尔需要一个BASEPATH
orroot
变量来存储 base_path 。(像这样)
在 CSS 中,打开的 url 是您的 .css 存储或加载的地址,在这种情况下,它与当前打开的窗口的 javascript 不同。
并且为了在绝对路径中更安全,建议使用//
而不是http://
将来可能迁移到https://
. 在您自己的示例中,以这种方式使用它:
<img src="//www.foo.com/images/kitten.png">