L4 등으로 여러 대의 웹 서버를 묶어서 서비스할 경우 심심찮게 ViewState 에러 등이 발생하는 경우를 볼 수 있다. 이것은 Server.Transfer나 Postback 요청이 발생할 때 서로 다른 서버로 전송되기 때문에 나타나는 현상이며, 여러가지 방법으로 해결할 수 있지만 여기서는 가장 강력한 방법 하나만 소개한다.

 

다음의 섹션을 machine.config나 web.config에 추가해준다.

 

<machineKey validationKey="61A272A40EE49F8E05AF0D8AA09115950ECD5CEAAE7BF990" decryptionKey="215158CAF8BCAC09DDBA30C1" validation="SHA1"/>

 

같은 역할을 하게 될 서버에 동일하게 설정해주어야 한다. 그러면 완벽하게 문제가 해결된다.

 

첨부 파일을 다운로드받아 다음과 같이 옵션을 주어 실행한다.


MachineKey.zip


 

C:\> MachineKey.exe 16 48

 

앞의 숫자는 복호화키 길이이며, 뒤의 숫자는 검증키 길이이다. 각각 16~48, 20~64 사이의 적당한 숫자를 주면 된다. 범위 이외의 숫자를 주어도 큰 관계는 없다.

 

>> 관련 글: http://support.microsoft.com/default.aspx?scid=kb;ko;316920

>> 관련 글: http://support.microsoft.com/default.aspx?scid=kb;en-us;829743


'Tech: > .NET·C#' 카테고리의 다른 글

.NET CF에서 지원하지 않는 XML 관련 기능들  (0) 2008.06.26
ASP.NET 2.0 machine key  (1) 2008.06.26
ASP vs. ASP.NET 비교  (0) 2008.06.26
참고 : ASP.NET 성능 저하 원인  (0) 2008.06.26
Oracle .NET Data Provider  (0) 2008.06.26


Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]