2013-04-11 7 views
1

안녕하세요, 저는 웹 사이트를 원격 서버에 업로드하려고했지만이 오류가 계속 발생합니다. 나는 'allowDefinition'을 'Everywhere'로 두 컴퓨터 구성에서 변경했지만 도움을받지 못했습니다. '전개 소매 = "true"/'를 문제 필드로 강조 표시합니다. 어떤 도움을 주시면 감사하겠습니다.asp.net allowDefinition = 'MachineOnly'로 등록 된 섹션을 machine.config 이상으로 등록하면 오류가 발생합니다.

전체 오류 설명 :

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

구성 오류

설명 : 오류가이 요청을 제공하는 데 필요한 구성 파일을 처리하는 동안 일어났다. 아래의 특정 오류 세부 정보를 검토하고 구성 파일을 적절히 수정하십시오.

파서 오류 메시지 : allowDefinition = 'MachineOnly'로 등록 된 섹션을 machine.config 이상으로 사용하는 것은 오류입니다.

소스 오류 :

Line 23:  </compilation> 
Line 24:  <customErrors mode="RemoteOnly"></customErrors> 
Line 25:  ***<deployment retail="true"/>*** 
Line 26:  <trace mostRecent="true" enabled="true" requestLimit="1000" pageOutput="false"     localOnly="true"/> 
Line 27:  <authentication mode="Forms" /> 

답변

1

MSDN에 따르면, 요소는 컴퓨터 수준에서만 설정할 수 있습니다. 요소는 컴퓨터 수준에서만 설정할 수 있습니다.

+0

Jason, MSDN에서는 응용 프로그램 수준에서 배포를 설정할 수 없다고 말합니다. Override는 machine.config에서 활성화 할 수 있습니다. 연결된 페이지에서 – user3285954

+0

"이 값은 응용 프로그램 수준이 아니라 컴퓨터 수준에서만 설정할 수 있습니다." – Jason

+0

처음 보았을 때 알지 못했습니다. 어쩌면 모든 응용 프로그램에 적용되는 것은 분명하지만 machine.config의 allowDefinition 특성 값에 따라 응용 프로그램 수준의 web.config 파일에서도 설정할 수 있습니다. http://msdn.microsoft.com/en-us/library /ms228245(v=vs.100).aspx – user3285954

0

당신은 가상 디렉터리를 만들 필요가있다. VS에서 프로젝트 속성으로 이동하여 웹 탭을 선택합니다. 거기, 당신은 그것을 만드는 버튼을 발견 할 것이다. 절대적으로 필요한 경우를 제외하고는 machine.config 파일 만 남겨 둡니다.

0

내 수정은 machine.config를 편집하고 allowDefinition 특성을 배포 요소 선언에서 삭제 한 것입니다. 추천 된 수정이라고 주장하지 않습니다. 다른 .Net 버전 및 x86 및 x64 응용 프로그램에 대한 machine.config 파일이 더 많이 있음에 유의하십시오. 즉,

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config 
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config