文件的本地路径与服务器上的路径不同

时间:2013-07-31 21:44:20

标签: asp.net iis web-deployment host

我们更改了暂存网站的域名,结果发现服务器上的路径现在指向不再有效的旧路径。我想知道是否有更好的方式让我们在开始时做路径,这样我们就不必通过整个网站来修复路径。服务器路径是硬编码的!!

例如

name1.staging.com/somepath/file.css

现在更改为

name2.staging.com/name3/somepath/file.css

所以以前的所有路径都是: /spathpath/file.css

现在需要更改为 /name3/somepath/file.css

1 个答案:

答案 0 :(得分:1)

当你编写asp.net应用程序时,你需要注意的最重要的路径是:

    ~/

这将始终返回当前应用程序的根目录,无论您是将其传递给Response.Redirect()Page.ResolveUrl()还是将其用作<asp:hyperlink />标记中超链接的一部分。例如:

<link href='<%= Page.ResolveUrl("~/somepath/file.css") %>' rel='stylesheet' />

请注意,这仅适用于.net本身处理的代码;对于其他文件,您需要确保始终使用相对路径。例如,如果您的图像和css具有以下结构:

/
    /images
        logo.gif
    /css
        main.css

然后使用样式引用徽标:

{
    background-image: url(../images/logo.gif);
}