2012-05-21 59 views
0

我已經使用visual studio 2010和IIS 7創建了一個MVC 3項目。將我的項目部署到IIS後,我可以使用我的域名地址成功訪問該網站,但我的文本顯示在瀏覽器中,但不顯示圖像,樣式表等...我右鍵單擊瀏覽器上的圖像之一以在新選項卡上打開,網站將我重定向到登錄頁面。所以我想知道是否需要訪問我的Content/images文件夾以供匿名用戶查看?或者它可能與IIS 7有關?如何訪問MVC 3項目中的文件夾?

我加載圖像喜歡如下

<img src="@Url.Content("~/Content/images/image.gif")" width="413" height="220" alt="First Image" /></div> 

這是我的項目的web.config

<?xml version="1.0" encoding="UTF-8"?> 

<configuration> 
<connectionStrings> 
<remove name="LocalSqlServer" /> 
<add connectionString="Server=XXXX;Database=XXXX;User ID=XXXX;Password=XXXX" name="ApplicationServices" providerName="System.Data.SqlClient" /> 
<add connectionString="Server=XXXX;Database=XXXX;User ID=XXXX;Password=XXXX" name="LocalSqlServer" providerName="System.Data.SqlClient" /> 
</connectionStrings> 

<appSettings> 
    <add key="webpages:Version" value="1.0.0.0" /> 
    <add key="ClientValidationEnabled" value="true" /> 
<add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
</appSettings> 

<system.web> 
    <customErrors mode="Off" /> 
    <compilation debug="true" targetFramework="4.0"> 
    <assemblies> 
     <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    </assemblies> 
</compilation> 

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
</authentication> 

<membership> 
    <providers> 
    <clear /> 
    <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" /> 
    </providers> 
</membership> 

<profile> 
    <providers> 
    <clear /> 
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
    </providers> 
</profile> 

<roleManager enabled="false"> 
    <providers> 
    <clear /> 
    <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
    <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" /> 
    </providers> 
</roleManager> 

<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> 
    <authorization> 
     <allow users="?" /> 
     <allow users=".\johnsmith" /> 
    </authorization> 
</system.web> 

<system.webServer> 
<validation validateIntegratedModeConfiguration="false" /> 
<modules runAllManagedModulesForAllRequests="true" /> 
    <security> 
     <authorization> 
      <add accessType="Allow" users="?" /> 
     </authorization> 
    </security> 
</system.webServer> 

<runtime> 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" /> 
    </dependentAssembly> 
</assemblyBinding> 
</runtime> 
</configuration> 

感謝,Y_Y

回答

1

Content文件夾沒有公共時你可能意思是這樣。爲了讓它訪問添加一個web.config文件在內容文件夾和configure it properly。或者,重新配置您的主要web.config


在運行時,通過授權模塊迭代的允許和 拒絕元素,從最高的本地配置文件,直到 授權模塊發現適合一個 特定用戶帳戶的第一個訪問規則。然後,授權模塊授予或拒絕對URL資源的訪問,這取決於發現的第一個訪問規則是允許規則還是拒絕規則。默認授權規則 是。因此,默認情況下,除非 另有配置,否則允許訪問。

+0

在我的we.config中我有,我雖然可以做的伎倆... –

+0

發佈相關的'web.config' ... – xandercoded

+0

我添加了這是一個現有的用戶,仍然沒有運氣.. –

相關問題