2

对不起,如果这是一个愚蠢的问题......

我开发了一个应用程序,它通过在 url 前面加上站点根目录(它托管的任何站点)来创建绝对链接。

例如:

<link rel="stylesheet" href="<?=SITE_ROOT?>/assets/css/global.css">

请注意,在站点根目录之后有一个斜杠。我现在需要将其转换为相对链接,因此我尝试使用点作为 SITE_ROOT 的值。

这将创建:

<link rel="stylesheet" href="./assets/css/global.css">

据我所知,它工作正常。这是一个合法的相对链接吗?或者有什么理由我不应该这样做?

注意:我不是想上一个目录,否则我会使用 ../ 我只是想留在同一个目录中。由于 SITE_ROOT 后面有一个斜线,我不能将其留空,否则它将成为根相对链接。

更新:这适用于 IIS 吗?

4

4 回答 4

4

这些链接在客户端上工作,而不是在服务器上,据我所知,它们的行为应该与<a>链接相同。./assets/css/global.cssassets/css/global.css,表示当前子站点下的文件夹assets。该./部分是多余的。如果你是一个相对于服务器的链接,你应该以斜杠开头,即:/assets/css/global.css将转到stackoverflow.com/assets/css/global.css,即使你在子站点上。

于 2009-06-25T06:58:22.993 回答
2

我认为这很好。

于 2009-06-25T06:40:10.817 回答
1

我认为它是客户端,所以它应该与 ASP.Net 一起使用。

于 2009-11-05T17:15:50.357 回答
0

它是合法的。

只需检查这是否适用于 IIS 服务器。国际海事组织它应该。它适用于 Apache。

jrh

于 2009-06-25T06:39:39.990 回答