2012-09-14 7 views
5

가, AppHarbor 나에게 컴파일 다음과 같은 출력했다 : 인터넷에서 검색 후AppHarbor 사전 컴파일 오류

Microsoft (R) ASP.NET Compilation Tool version 4.0.30319.17929 
Utility to precompile an ASP.NET application 
Copyright (C) Microsoft Corporation. All rights reserved. 

D:\temp\cprt3dr0.2g3\output\_PublishedWebsites\WebMatrixWebsite\gnsystem\gnsystem\web.config(24): error ASPCONFIG: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. 

[ConfigurationErrorsException]: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. (D:\temp\cprt3dr0.2g3\output\_PublishedWebsites\WebMatrixWebsite\gnsystem\gnsystem\web.config line 24) 
    at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal) 
    at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject) 
    at System.Configuration.BaseConfigurationRecord.GetSection(String configKey) 
    at System.Web.Configuration.RuntimeConfig.GetSectionObject(String sectionName) 
    at System.Web.Configuration.RuntimeConfig.GetSection(String sectionName, Type type, ResultsIndex index) 
    at System.Web.Configuration.RuntimeConfig.get_Compilation() 
    at MTConfigUtil.GetCompilationConfig(String vpath) 
    at System.Web.Compilation.WebDirectoryBatchCompiler..ctor(VirtualDirectory vdir) 
    at System.Web.Compilation.BuildManager.BatchCompileWebDirectoryInternal(VirtualDirectory vdir, Boolean ignoreErrors) 
    at System.Web.Compilation.BuildManager.BatchCompileWebDirectory(VirtualDirectory vdir, VirtualPath virtualDir, Boolean ignoreErrors) 
    at System.Web.Compilation.BuildManager.PrecompileWebDirectoriesRecursive(VirtualDirectory vdir, Boolean topLevel) 
    at System.Web.Compilation.BuildManager.PrecompileWebDirectoriesRecursive(VirtualDirectory vdir, Boolean topLevel) 
    at System.Web.Compilation.BuildManager.PrecompileWebDirectoriesRecursive(VirtualDirectory vdir, Boolean topLevel) 
    at System.Web.Compilation.BuildManager.PrecompileWebDirectoriesRecursive(VirtualDirectory vdir, Boolean topLevel) 
    at System.Web.Compilation.BuildManager.PrecompileAppInternal(VirtualPath startingVirtualDir, IEnumerable`1 excludedVirtualPaths) 
    at System.Web.Compilation.BuildManager.PrecompileApp(VirtualPath startingVirtualDir, IEnumerable`1 excludedVirtualPaths) 
    at System.Web.Compilation.BuildManager.PrecompileApp(ClientBuildManagerCallback callback, IEnumerable`1 excludedVirtualPaths) 
    at System.Web.Compilation.BuildManagerHost.PrecompileApp(ClientBuildManagerCallback callback, List`1 excludedVirtualPaths) 
    at System.Web.Compilation.BuildManagerHost.PrecompileApp(ClientBuildManagerCallback callback, List`1 excludedVirtualPaths) 
    at System.Web.Compilation.ClientBuildManager.PrecompileApplication(ClientBuildManagerCallback callback, Boolean forceCleanBuild) 
    at System.Web.Compilation.ClientBuildManager.PrecompileApplication(ClientBuildManagerCallback callback) 
    at System.Web.Compilation.Precompiler.Main(String[] args) 




Website precompilation failed with exit code 1. Precompilation can optionally be disabled in application settings 

을, 나는 몇 가지 솔루션은 내 솔루션을 청소하는 저 위에 가리키는하고 구성하는 것으로 내 app 폴더를 IIS 내의 가상 폴더로 사용하십시오.

내가 처음했는데 (작동하지 않았다) AppHarbor에서 두 번째 방법을 알지 못했다.

EDIT1는 : Web.Config

+0

web.config 파일 (요점 있음)을 게시하는 것이 좋습니다. –

+0

https://gist.github.com/3739343 –

+1

응용 프로그램 설정에서보기 미리 컴파일을 비활성화 할 수 있습니다. 그것은 당신을 문제로부터 벗어나게 할 수 있습니다. – friism

답변

1

당신은 응용 프로그램 설정에서보기 미리 컴파일을 사용하지 않도록 설정할 수 있습니다. 그것은 당신을 문제로부터 벗어나게 할 수 있습니다.

결국 코드를 ​​검사하는 것이 좋습니다. 결국이 예외가 다시 발생하므로 elmha과 같은 일부 추적자를 사용하면 문제를 자세하게 찾을 수 있습니다. 웹 구성 오류가 있습니다.