Asp.net mvc 4 从目录中的文件夹加载ASP.NET MVC 4文件时出错

Asp.net mvc 4 从目录中的文件夹加载ASP.NET MVC 4文件时出错,asp.net-mvc-4,Asp.net Mvc 4,我在托管我的网站时遇到问题 当我将Visual Studio 2012中创建的wwebsite的文件加载到目录中时,运行良好,但当我将hem放入目录中的一个文件夹中,并在浏览器中转到该文件夹的名称时,出现了错误 例如,当我将所有文件放在目录中时,我的地址是: 它表明一切都是正确的 当我在我的目录“MyProject”中创建一个文件夹并将文件放在这里时,它出错了 在我的浏览器中: 我的web.config文件: <?xml version="1.0" encoding="utf-8"?>

我在托管我的网站时遇到问题

当我将Visual Studio 2012中创建的wwebsite的文件加载到目录中时,运行良好,但当我将hem放入目录中的一个文件夹中,并在浏览器中转到该文件夹的名称时,出现了错误

例如,当我将所有文件放在目录中时,我的地址是: 它表明一切都是正确的

当我在我的目录“MyProject”中创建一个文件夹并将文件放在这里时,它出错了 在我的浏览器中:

我的web.config文件:

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <appSettings>
    <add key="webpages:Version" value="2.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="PreserveLoginUrl" value="true" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>
  <system.web>
    <httpRuntime targetFramework="4.5" />
    <compilation targetFramework="4.5" />
    <pages>
      <namespaces>
        <add namespace="System.Web.Helpers" />
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="System.Web.WebPages" />
      </namespaces>
    </pages>
  </system.web>
  <system.webServer>
    <handlers>
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
  </system.webServer>
</configuration>

按文件我想你说的是一些javascript或CSS文件。如果是这种情况,则应使用url帮助器将其包括在内:

<script type="text/javascript" src="~/scripts/myscript.js"></script>

而不是:

<script type="text/javascript" src="/scripts/myscript.js"></script>


如果你不是说你的站点运行不正常,那么你应该确保IIS中的虚拟目录指向正确的物理位置。

是的,我指的是像View(Cshtml)这样的文件和css/javascript。您的css/javascript文件应该使用
~/…
语法而不是
/…
呈现。您是否收到一些特定的错误消息?你能更准确地描述你的问题吗?我甚至看不到文件夹里的我的网站。他说:403-禁止:访问被拒绝。IIS中的虚拟目录怎么样?你能给我举个例子吗?我认为问题在于,你的虚拟目录设置如何?你有家长网站吗?父文件夹中是否有web.config?是否已将MyProject目录转换为IIS应用程序