这可能只是一个微不足道的问题,但我真的不知道包含的最佳做法是什么,使用绝对路径说javascript,img或css
我现在正在使用的是使用像这样的代码
<?php
$prefix = '//';
$rootFolder = $prefix . $_SERVER['HTTP_HOST'];
?>
所以当我想要包含像jquery这样的东西时,我只需输入像这样的代码
<script type="text/javascript" src="<?php echo $rootFolder ?>/jquery-1.7.1.min.js"></script>
这够好吗?或者我应该将前缀修改为“http://”,或者可能有更好的方法使用另一个超全局变量等?
提前感谢:)
答案 0 :(得分:1)
这个问题无法以正确的方式回答,因为绝对路径和相对路径在网站上都有其重要性。
对于搜索引擎,他们不喜欢与相同网站有绝对链接的网站。现在的现代浏览器已经读取了网站当前URL前缀的相对路径,除非在URL的前面使用“/”。因此,当您尝试尽可能多地使用相对路径时,它不应该受到伤害。
另一种情况是,如果您的应用程序可以由多个模块扩展。通常采用管理模块和一个用户模块。如果这些模块共享JS,CSS等公共资源文件夹,则其有用且易于创建相对路径。
因为,你的问题是关于从根文件夹访问资源,你应该没问题,就像使用相对路径一样。
答案 1 :(得分:1)
使用src="/jquery-1.7.1.min.js"
,前导斜杠将转到根目录。因此,您所处的文件夹级别并不重要,它始终会找到它。这基本上是绝对的,但没有协议和域名。
如果您总是在同一台服务器上,则根本不需要主机名(如果您移动域名,最好不要包含主机名)。