2016-10-05 89 views
0

我有ASP.NET網站。403當我嘗試重定向時,公用文件夾中的禁止錯誤

我可以訪問的公共網頁,這是確定:

http://mysite/MyPublicFolder/index.htm

,但我得到403錯誤當我嘗試訪問該文件夾:

http://mysite/MyPublicFolder/

MyPublicFolder包含的index.htm

我要不允許用戶瀏覽目錄,只能訪問文件夾中的所有頁面

我們有以下錯誤:

403 - Forbidden: Access is denied

You do not have permission to view this directory or page using the credentials that you supplied.

<location path="/MyPublicFolder"> 
    <system.web> 
    <authorization> 
     <allow users="*"/> 
    </authorization> 
    </system.web> 
</location> 

我使用IIS 7.5和Windows Server 2008 R2。

有什麼建議嗎?

UPDATE的web.config

注:V1是我公用文件夾

<location path="v1"> 
    <system.web> 
     <authorization configSource="Config\system.web.authorization.allow.config" /> 
    </system.web> 

    <system.webServer> 
     <defaultDocument> 
     <files> 
      <add value="index.htm"/> 
     </files> 
     </defaultDocument> 
     <httpRedirect enabled="true" exactDestination="true" httpResponseStatus="Found"> 
      <add wildcard="*" destination="/v1/index.htm" /> 
     </httpRedirect> 
    </system.webServer> 

    </location> 

    <location path="v1/index.htm"> 
    <system.webServer> 
     <httpRedirect enabled="false" /> 
    </system.webServer> 
    </location> 
+0

你想讓你的用戶瀏覽你的目錄嗎? –

+0

我想*不允許用戶瀏覽目錄,只能訪問文件夾*中的所有頁面。 MyPublicFolder包含** index.htm **。 – Kiquenet

回答

0

這是在我心中的第一件事是默認文檔。你有它設置爲'index.htm'? Here有點多信息。

0

這聽起來有點混亂。您在說您可以打開http://mysite/MyPublicFolder/index.htm,這意味着您已經可以訪問位於此文件夾中的所有頁面。我可以猜測,當您訪問文件夾時,您希望重定向到index.htm文件。檢查IIS管理器中的默認文檔部分,並確保index.htm在那裏。

UPDATE:

看起來像有在web.config文件中的大量無用的配置。它更改爲以下:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <location path="v1"> 
    <system.web> 
     <authorization configSource="Config\system.web.authorization.allow.config" /> 
    </system.web> 
    </location> 
</configuration> 

現在,如果你訪問你的文件夾v1它應該自動顯示你的內容你index.htm文件。