asp.net – 在web-farm网站上将machineKey添加到web.config

前端之家收集整理的这篇文章主要介绍了asp.net – 在web-farm网站上将machineKey添加到web.config前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们(实际上是IT合作伙伴)最近更改了我们拥有的网站养殖网站的某些DNS,以便两个生产服务器在两者之​​间进行轮询DNS切换。在这个切换之前,我们没有真正遇到过WebResource.axd文件的问题。自从切换,当我们点击实时公开的URL,我们得到一个错误

CryptographicException

Padding is invalid and cannot be removed.

当我们打到特定的服务器本身,他们负载正常。我研究了这个问题,似乎因为他们在两个服务器之间共享资产,我们需要在web.config中为每个服务器有一个一致的machineKey,以便他们可以在两者之间一致地加密和解密。我的问题是:

>我可以通过服务器上的工具生成machineKey,还是我需要编写代码来做到这一点?
>我只需要添加machineKey到每个服务器上的web.config,或者你认为我需要做任何其他事情,使两个服务器在一起工作? (两个web.config目前没有machineKey)

解决方法

这应该回答:

http://msdn.microsoft.com/en-us/library/ff649308.aspx#paght000007_webfarmdeploymentconsiderations

简而言之,要设置机器密钥,请参考以下链接
http://docs.orchardproject.net/Documentation/Setting-up-a-machine-key

并将以下行添加到system.web标记下的所有Web服务器中的web.config文件(如果它不存在)。

<machineKey  
validationKey="21F090935F6E49C2C797F69BBAAD8402ABD2EE0B667A8B44EA7DD4374267A75D7
               AD972A119482D15A4127461DB1DC347C1A63AE5F1CCFAACFF1B72A7F0A281B"           
decryptionKey="ABAA84D7EC4BB56D75D217CECFFB9628809BDB8BF91CFCD64568A145BE59719F"
validation="SHA1"
decryption="AES"
/>

请确保您有计算机密钥和web.config文件的永久备份

猜你在找的asp.Net相关文章