브라우저에서 표시하는 대신 ASP 앱을 다운로드함

브라우저에서 표시하는 대신 ASP 앱을 다운로드함

윈도우 서버 2012 R2/IIS 8.5

(ASP) 애플리케이션이 있는 경우 IIS > Sites > Default Websitelocalhost URL을 방문하면 페이지가 표시되는 대신 파일이 다운로드됩니다.

파일은 C:\inetpub\wwwroot\rooms이 폴더에 있으며 이 폴더에는 다양한 .dll파일, 폴더 및 web.config. 의 내용은 web.config다음과 같습니다.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <directoryBrowse enabled="false" />
        <handlers accessPolicy="Read, Execute, Script">
            <remove name="ISAPI-dll" />
            <add name="ISAPI-dll" path="*.dll" verb="*" modules="IsapiModule" scriptProcessor="C:\inetpub\wwwroot\rooms\rooms.dll" resourceType="File" requireAccess="Execute" allowPathInfo="true" preCondition="bitness32" />
        </handlers>
        <defaultDocument enabled="true">
            <files>
                <add value="rooms.dll" />
            </files>
        </defaultDocument>
    </system.webServer>
</configuration>

Default DocumentIIS에서 관련 파일 을 설정했습니다 .dll. 방문할 때 다운로드되는 내용입니다.localhost/rooms

IIS 서버와 사이트 자체를 몇 번 다시 시작했습니다. 동일한 서버에서 호스팅되는 다른 사이트가 있으며 예상대로 작동하고 유사한 URL을 통해 액세스할 수 있습니다. 저도 다양한 브라우저를 사용해 봤습니다.

Windows 기능과 역할을 확인한 결과 및 가 및 와 마찬가지로 로 표시되는 ASP.NET 3.5것을 확인할 수 있습니다 .ASP.NET 4.5(Installed)ISAPI ExtensionsISAPI Filters

저는 IIS나 ASP에 대한 경험이 거의 없습니다.

  • 애플리케이션이 표시되지 않고 다운로드되는 이유는 무엇입니까?
  • 이 문제를 해결하려면 어떻게 해야 합니까?

답변1

우리에게 그것은 구속력 있는 문제였습니다. IIS를 열고 웹 사이트를 마우스 오른쪽 버튼으로 클릭한 후 바인딩 속성을 보면 모든 이름과 파일 처리 방법이 나열됩니다.

삭제해야 할 두 가지 항목이 있습니다.

type                 host  port       binding
------------------------------------------------
net.msmq                              localhost*
msmq.formatname                       localhost*

유지해야 하는 나머지 바인딩은 다음과 같습니다.

type    host      port                 binding
------------------------------------------------
http              80                        

호스트 이름이 비어 있으면 무엇이든 일치한다는 의미입니다. 그러나 두 항목이 먼저 localhost에 대한 쿼리를 포착했기 때문에 요청을 http 유형으로 처리할 수 없었습니다.

관련 정보