这是一个非常基本的问题,但我一直在讨论这个问题很长一段时间,我希望有人可以帮助解决我的困惑。
我在linux服务器上有一个共享帐户
public_html的路径是:/home/myusername/public_html
我网站的代码位于此处:/home/myusername/public_html/mysite.com
在mysite.com下有“mycss”,“myjs”,“myphp”等目录。
当我创建一个绝对路径时(例如,在php代码或html文件中),有时路径需要从/ home开始,例如/home/myusername/public_html/mysite.com/myphp/myfile.php
有时需要从mysite.com开始,例如/myphp/myfile.php
我的困惑:什么绝对路径需要从/ home开始,什么时候需要在mysite.com内启动?是否有经验法则或任何人可以提供的见解?
答案 0 :(得分:1)
你混淆了两种类型的绝对/相关性。
如果您使用网站术语(images / js / html内容),您的absolute
是您的根网站文件夹中的路径(即:/home/myusername/public_html/mysite.com
)
所以如果你有一个像这样的文件夹:
/home/myusername/public_html/mysite.com/images/bob.jpg
在您的HTML中,绝对路径为/images/bob.jpg
,而相对网站路径为images/bob.jpg
等;
如果您正在进行PHP / Server端包含,则需要使用FULL绝对路径,以便整个/home/myusername/public_html/mysite.com
结构。
同时,如果你想使用相对方法(在大多数情况下首选,因为它使你的PHP代码更容易移动),你只需要include('../database/connect.php');
答案 1 :(得分:0)
这取决于网站。你有没有为网站编写PHP代码?通常绝对路径将指向Web根目录(例如/home/myusername/public_html/mysite.com),但是如果您出于安全目的而在Web根目录之外有配置或其他包含的文件 - 这可能需要不同的路径(例如/ home / myusername / notwebroot)
答案 2 :(得分:0)
你真的混淆了一条绝对路径的相对路径。
/home/myusername/public_html
是绝对路径
/public_html/anything
/myphp/myfile.php
/mysite.com/anything
这些都是相对路径。
如果它不是从根开始那么它不是绝对路径。如果它是从您网站的根目录开始那么它是一个相对路径,因为如果您将您的网站移动到另一个文件夹,那么这些目录和文件的路径不需要更改(即它们相对于Web根目录) 。