全球主机交流论坛

标题: 绝对路径与相对路径 [打印本页]

作者: kaleok    时间: 2021-11-2 17:23
标题: 绝对路径与相对路径
绝对路径实际上严格区分,分为站点绝对路径和系统绝对路径。

在linux当中,系统绝对路径的展现形式等价于站点绝对路径。都是/  开头

但需要注意,系统绝对路径是linux特有的系统根目录/为根目录的,比如包括/root   /home等

但站点的绝对路径实际上是nginx划分的站点目录作为根目录的。比如在网页源代码中使用 /1.js,只能访问域名对应所在根目录的www.xxx.com/1.js

所以在php操作文件时,需要理解站点绝对路径和系统绝对路径的区别。当然php内置函数和魔术常量可以很好的区分出系统绝对路径,

比如__DIR__获取的就是当前php脚本所在的系统绝对路径,diarname(__FILE__);也同样可以拿到系统绝对路径。

但很多开发者喜欢写死路径字符串,比如file_get_contens('/upload/1.txt');这样的方法实际上是错误的。这样的写法将会访问linux系统根目录的 /1.txt,而不是站点所在目录的/1.txt;并且由于php-fpm进程也会受制于nginx划分的站点目录权限,即使存在该文件也无法读取。



而在window系统中,系统绝对路径和站点绝对路径的展现形式就不一样了。

系统绝对路径是以盘符开头的,比如D:\\1.txt;

而站点绝对路径同样是web服务器引擎软件划分的站点根目录为起点,所以网页源代码中使用 /1.js,只能访问域名对应所在根目录的www.xxx.com/1.js



而相对路径,就是以脚本所在目录为基准,相对于代码脚本所在目录位置上下查找对应的资源。相对路径下是不区分系统平台的。但是却存在不可靠的情况,比如在多个incode载入的php脚本中,实际上写在被载入脚本的相对路径已经变成了主动载入其他脚本的当前脚本为基准。相对路径可以是./1.js或者是1.js等,上级访问只能是../../../1.js,而不是........./1.js

但通过上面的例子可以发现,在php操作文件时,尽量采用内置函数获取系统绝对路径,可以有效防止系统环境变动产生不兼容的情况。
作者: hjh    时间: 2021-11-2 17:49
loc记事本
作者: 403_Forbidden    时间: 2021-11-2 17:52
????????这是什么啊

作者: 买鸡吃灰    时间: 2021-11-2 17:55
真把论坛当你垃圾留言站了吗
作者: minlearnhbs    时间: 2021-11-2 17:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: 电脑    时间: 2021-11-2 17:57
精神分裂的前兆
作者: LikeOracle    时间: 2021-11-2 18:02
不明觉厉
作者: 超级无敌小马甲    时间: 2021-11-2 18:03
学习了。还是蛮有用的
总比水贴好
LOC里不是每个都是编程大佬,所有知识学习是不错的
作者: kaleok    时间: 2021-11-2 18:07
超级无敌小马甲 发表于 2021-11-2 18:03
学习了。还是蛮有用的
总比水贴好
LOC里不是每个都是编程大佬,所有知识学习是不错的 ...

这就是我拿hostloc当日记本的意义所在。
作者: refrigerator    时间: 2021-11-2 18:19
搁这儿记笔记?
作者: kaleok    时间: 2021-11-2 18:20
refrigerator 发表于 2021-11-2 18:19
搁这儿记笔记?

对,有人看懂了,并且认为有用,怎么了?你不爽?
作者: tian1781    时间: 2021-11-2 18:20
搞个博客写多好,没准还能有点流量
作者: kaleok    时间: 2021-11-2 18:22
买鸡吃灰 发表于 2021-11-2 17:55
真把论坛当你垃圾留言站了吗

你认为是垃圾留言,有其他人认为是有用的资料,怎么办?你不爽么?来互喷呀
作者: dsg0809    时间: 2021-11-2 18:28
真搞不懂你发这些干嘛,真想了解的人也不会拿你这不算通顺的文章当资料吧。
作者: kaleok    时间: 2021-11-2 18:31
dsg0809 发表于 2021-11-2 18:28
真搞不懂你发这些干嘛,真想了解的人也不会拿你这不算通顺的文章当资料吧。 ...

也许是论坛定位问题,以后不发了,看不懂可以理解,不通顺就不必强行解释了。根本不是一类人,大多数不是程序员,我自己定位论坛有偏差而已。以后不发了
作者: 买鸡吃灰    时间: 2021-11-2 18:48
kaleok 发表于 2021-11-2 18:22
你认为是垃圾留言,有其他人认为是有用的资料,怎么办?你不爽么?来互喷呀 ...

谁认为有用?看你这口水话讲半天,绝对路径相对路径两句话的事情能水一大篇可见你技术不行倒是挺爱装的,另外别以为字写得多就能让人更容易理解,字多反而会把别人绕进你的思路把别人带歪




欢迎光临 全球主机交流论坛 (https://443502.xyz/) Powered by Discuz! X3.4