Asp.net:部署IIS

时间:2018-02-13 15:04:15

标签: c# asp.net-mvc iis filepath

正如问题所述,我现在花了将近2-3个小时的时间和我现在在这里。该项目在VS中运行良好,但是当我通过IIS部署/发布它(在本地网络上访问它)时,一些文件(大部分文件)都无法访问。当我在我的web项目中添加Metronic主题时,就会发生这种情况。文件如下:

  <!-- BEGIN GLOBAL MANDATORY STYLES -->
    <link href="http://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700&subset=all" rel="stylesheet" type="text/css" />
    <link href="../../assets/global/plugins/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css" />
    <link href="../../assets/global/plugins/simple-line-icons/simple-line-icons.min.css" rel="stylesheet" type="text/css" />
    <link href="../../assets/global/plugins/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
    <link href="../../assets/global/plugins/bootstrap-switch/css/bootstrap-switch.min.css" rel="stylesheet" type="text/css" />
    <!-- END GLOBAL MANDATORY STYLES -->

OR

<img src="../assets/pages/img/logo.png" alt="place Logo Here" />

现在一旦发布,它就会抛出一堆错误,无法找到任何这些文件。

State when running on VS

State Once its published to IIS

注意:两张图片中的url,已部署的项目位于另一个文件夹下。是罪魁祸首吗?

我正在尝试找出适用于VS调试和已部署项目的解决方案。

我试过的是:

1:https://weblogs.asp.net/scottgu/tip-trick-how-to-run-a-root-site-with-the-local-web-server-using-vs-2005-sp1

2:Deploying asp.net application to root directory in IIS

3:How to avoid deploying ASP.NET MVC3 application in subpath on IIS 7.5

4:ASP.NET WebForms: Why do relative paths within user controls work locally, but not when deployed?

5:IIS virtual directory and ASP.NET directory paths

6:Relative path from site root

2 个答案:

答案 0 :(得分:2)

您可能希望使用以“〜/”开头的绝对路径作为网站/ Web应用程序的基本目录。

e.g. "~/assets/pages/img/logo.png"

在Code Behind工作时使用

Server.MapPath("~/") 

作为基本文件夹。

答案 1 :(得分:0)

  

g2是我在wwwroot中创建的文件夹,其中包含已发布的文件

  • 如果你的意图是制作一个&#34;子申请&#34; (无论是&#34;父母&#34;在wwwroot中,它可以是"virtual directory""sub application"

  • 如果您打算将其作为自己的应用程序发布,与其他任何应用程序分开,那么您就不必在wwwroot下发布它。您创建了新的IIS sites

使用~/的上一个答案基于应用程序根

的定义

... H个