【发布时间】:2014-01-16 19:34:36
【问题描述】:
我有一个网页放在组织的子目录中,例如
/internal/internalstuff.html
现在我希望internalstuff.html 能够轻松引用顶层目录中的所有其他文件,例如样式表。
是否有一种简单的方法可以使所有链接都引用下一个目录,或者我是否需要对所有链接进行硬编码,例如
"../stylesheet.css"
【问题讨论】:
我有一个网页放在组织的子目录中,例如
/internal/internalstuff.html
现在我希望internalstuff.html 能够轻松引用顶层目录中的所有其他文件,例如样式表。
是否有一种简单的方法可以使所有链接都引用下一个目录,或者我是否需要对所有链接进行硬编码,例如
"../stylesheet.css"
【问题讨论】:
不,你必须这样做。
如果你会使用 PHP,你可以这样做:
<?php
function getResource($res) {
return "../" . $res;
}
?>
在您的页面文件中:
<link rel="stylesheet" type="text/css" href="<?php getResource('stylesheet.css'); ?>">
但是由于您的项目很小,只需要使用 html,我不建议这样做。此外,它比硬编码更长。
好的,对,你可以使用 .htaccess 文件:
RewriteEngine On
RewriteRule ^\.css$ /yourfolder/stylesheet.css [L]
试一试,我不完全确定,但如果你想确定你可以阅读有关 htaccess 模块 mod_rewrite 的信息。你的服务器也需要支持这个模块。
【讨论】:
您可以通过使用<base> 标记非常轻松地做到这一点。只需将以下内容放在您网站上的<head> 标记中:
<base href="http://example.com/">
这会自动将所有相对 url 更改为从基本 url http://example.com 开始。
【讨论】:
<base href="...">标签放在头部的顶部。
在纯 HTML 中 - 没办法 :(
为此,您需要一些后端魔法。
【讨论】: