2011-08-14 4 views
0

BlogEngine.NET은 내 웹 호스트 (DiscountASP.NET)의 루트 디렉토리에 설정되어 있습니다. 하위 디렉토리 (www.mydomain.com/wiki)에 개인 위키를 설정하려고합니다.IIS - 하위 디렉토리에 독립 실행 형 응용 프로그램을 설치하는 방법은 무엇입니까?

위키 폴더는 IIS에서 웹 응용 프로그램으로 설정됩니다. www.mydomain.com/wiki shows :

'/ wiki'응용 프로그램의 서버 오류입니다.

컴파일 오류

설명 : 오류가이 요청을 제공하는 데 필요한 리소스 컴파일하는 동안 오류가 발생했습니다. 다음 특정 오류 정보를 검토하고 소스 코드를 적절히 수정하십시오.

컴파일러 오류 메시지 : CS0246 : 형식 또는 네임 스페이스 이름 'BlogEngine'을 (를) 찾을 수 없습니다 (? 당신은 using 지시문 또는 어셈블리 참조가)

소스 오류 :

Line 103:  </controls> 
Line 104:  <namespaces> 
Line 105:  <add namespace="BlogEngine.Core" /> 
Line 106:  </namespaces> 
Line 107: </pages> 

그래서 웹 서버는 하위 폴더의 응용 프로그램에 요청을 보내기 전에 루트 응용 프로그램의 web.config를 확인합니다. 왜 이제 빈을 찾을 수 없는지 (www.mydomain.com을 치면 잘 작동합니다), 확실하지 않습니다.

하위 폴더 응용 프로그램을 어떻게 설정하여 루트 폴더에 설치된 응용 프로그램과 독립적으로 설정할 수 있습니까?

답변

0

위 내용을 읽은 결론 먼저 모든 IIS를 제어 할 수 있다면 응용 프로그램 풀 및 가상 디렉터리를 통해 하위 디렉터리에 응용 프로그램을 설치하는 것이 쉬워야합니다.

가상 디렉터리없이이 파일을 실제 파일 시스템의 하위 디렉터리에 배치하면 문제가되는데 그 이유는 하위 디렉터리의 web.config가 루트 디렉터리의 web.config에서 상속된다는 것입니다.

경우에 따라 상속 된 항목을 제거하려면 하위 디렉토리의 web.config에서 및 태그를 사용하여 해결할 수 있습니다. 그것은 나의 취향에 너무 조금 난해했다.

한 가지 방법은 모든 앱을 별도의 하위 디렉토리 (/ blog/wiki 등)에 넣은 다음 루트 디렉토리에서 원하는 앱에 URL 재 작성을 사용하는 것입니다./블로그 (원래의 쿼리 문자열을 추가)를 가리 키도록

^(?!(wiki|blog)).+ 

^& 

: 내 경우에는 내가 규칙을 사용했다.

0

블로그 엔진은 당신의 위치에 있습니다 : http://blog.discountasp.net/ 하위 도메인 루트가 아닌 :

그럼 적어도 도메인 DNS 레코드가 그런 식으로 설정됩니다.

별도의 app_pool 필요 그래서 당신이 3 app_pools

  1. 을 필요로하는 마법은 다른 사람 :

    를 잘 연주하는 얻을 이잖아 메인 사이트 www.discountasp를 들어 엔진

  2. BE .NET 위키

를 들어

  • 서로가 엉망하지 않습니다 이렇게 그들이 TR 완전히 다른 3 개의 앱으로 평가 받았다.

    기본 "루트"web.config에서 서브 폴더에 web.config를 허용하도록 설정되어 있는지 확인하십시오.

    하지만 자신의 app_pools가있는 경우에는 이것이 필요한지 잘 모릅니다.

  • +0

    불행히도 DiscountASP의 소유자가 아닙니다. 그들은 내 도메인을 호스팅하고 있습니다. =) 별도의 앱 풀은 좋을 것이지만 나만의 깡패 였고 공유 호스팅 비용 만 지불했기 때문에 사이트 수준에서 제어 할 수있었습니다. IIS에서 다운. – DavveK

    0

    내가 한 것은 BlogEngen.Net의 web.config 파일 끝에 하위 태그의 설정을 제거한 위치 태그를 추가 한 것입니다.

    당신이 사용하고 당신이 그들 각각에 대해 추가해야 더 하위 폴더가있는 경우

    <location path="wiki" allowOverride="true"> 
    <connectionStrings> 
        <remove name="BlogEngine"/> 
        <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/> 
    </connectionStrings> 
    <system.web> 
        <compilation debug="false" targetFramework="4.0"> 
         <assemblies> 
          <remove assembly="System.Management, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
          <remove assembly="System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
          <remove assembly="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
          <remove assembly="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
          <remove assembly="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
          <remove assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
          <remove assembly="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
          <remove assembly="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
          <remove assembly="System.Web.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
          <remove assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
          <remove assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
          <remove assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
         </assemblies> 
         <expressionBuilders> 
          <remove expressionPrefix="LinqLength"/> 
          <remove expressionPrefix="Reflect"/> 
          <remove expressionPrefix="Session"/> 
          <remove expressionPrefix="Server"/> 
          <remove expressionPrefix="QueryString"/> 
          <remove expressionPrefix="Code"/> 
         </expressionBuilders> 
        </compilation> 
        <membership defaultProvider="AspNetSqlMembershipProvider"> 
         <providers> 
          <clear/> 
          <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/> 
         </providers> 
        </membership> 
        <roleManager defaultProvider="AspNetSqlRoleProvider"> 
         <providers> 
          <clear/> 
          <add name="AspNetSqlRoleProvider" connectionStringName="LocalSqlServer" applicationName="/" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
          <add name="AspNetWindowsTokenRoleProvider" applicationName="/" type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
         </providers> 
        </roleManager> 
        <siteMap defaultProvider="AspNetXmlSiteMapProvider"> 
         <providers> 
          <add siteMapFile="web.sitemap" name="AspNetXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
         </providers> 
        </siteMap> 
        <httpModules> 
         <remove name="WwwSubDomainModule"/> 
         <remove name="UrlRewrite"/> 
         <remove name="CompressionModule"/> 
         <remove name="ReferrerModule"/> 
         <remove name="SecurityModule"/> 
         <remove name="RightModule"/> 
        </httpModules> 
        <httpHandlers> 
         <remove verb="*" path="file.axd"/> 
         <remove verb="*" path="image.axd"/> 
         <remove verb="*" path="syndication.axd"/> 
         <remove verb="*" path="sitemap.axd"/> 
         <remove verb="*" path="trackback.axd"/> 
         <remove verb="*" path="pingback.axd"/> 
         <remove verb="*" path="opensearch.axd"/> 
         <remove verb="*" path="metaweblog.axd"/> 
         <remove verb="*" path="rsd.axd"/> 
         <remove verb="*" path="css.axd"/> 
         <remove verb="*" path="js.axd"/> 
         <remove verb="*" path="res.axd"/> 
         <remove verb="*" path="rating.axd"/> 
         <remove verb="*" path="opml.axd"/> 
         <remove verb="*" path="blogml.axd"/> 
         <remove verb="*" path="sioc.axd"/> 
         <remove verb="*" path="apml.axd"/> 
         <remove verb="*" path="foaf*.axd"/> 
         <remove verb="*" path="*.htm"/> 
        </httpHandlers> 
    </system.web> 
    <system.webServer> 
        <modules> 
         <remove name="WwwSubDomainModule"/> 
         <remove name="UrlRewrite"/> 
         <remove name="CompressionModule"/> 
         <remove name="ReferrerModule"/> 
         <remove name="SecurityModule"/> 
         <remove name="RightModule"/> 
        </modules> 
        <handlers> 
         <remove name="FileHandler"/> 
         <remove name="ImageHandler"/> 
         <remove name="Syndication"/> 
         <remove name="Sitemap"/> 
         <remove name="Trackback"/> 
         <remove name="Pingback"/> 
         <remove name="OpenSearch"/> 
         <remove name="MetaWeblog"/> 
         <remove name="RSD"/> 
         <remove name="CssHandler"/> 
         <remove name="Javascript"/> 
         <remove name="Resource"/> 
         <remove name="Rating"/> 
         <remove name="Opml"/> 
         <remove name="BlogML"/> 
         <remove name="SIOC"/> 
         <remove name="Apml"/> 
         <remove name="Foaf"/> 
         <remove name="Html"/> 
        </handlers> 
    </system.webServer> 
    
    .