Windows Server 2016 IIS托管网站无法在阿里云上的远程文件共享上加载dll

时间:2019-01-14 07:46:25

标签: iis dll smb windows-server-2016 alibaba-cloud

我在IIS上遇到问题,困扰了我很多天。在网上搜索之后,我仍然找不到正确的答案,因此是时候在StackOverflow上发布以寻求帮助了。

我在阿里云上创建了Windows Server 2016 VM,并在阿里云上创建了SMB文件共享。然后,我按照此说明(https://github.com/AlibabaCloudDocs/nas/blob/master/intl.en-US/Best%20Practices/Use%20Windows%20IIS%20and%20NAS%20to%20provide%20Web%20and%20FTP%20services.md)将我的网站放在文件共享上,并将其加载到IIS。问题是此设置适用于Windows Server 2012 R2或更低版本,但是,它显示Windows Server 2016上的dll加载失败。错误如下所示:

Dll load failure: 0x8007003a

我尝试了很多设置

<runtime> <loadFromRemoteSources enabled="true"/> </runtime>

并在线搜索,但所有技巧都无效。我还尝试过使用Process Monitor检查w3wp.exe的详细信息,并在2012年和2016年之间得到了这种区别:

Windows Server 2012's w3wp.exe gives CreateFile: Success

Windows Server 2016's w3wp.exe gives CreateFile: Invalid Network Response

2012年(左)和2016年(右)之间的比较: Left: 2012, Success; Right: 2016, Invalid Network Response

另一个有趣的事情是Windows Server 2016并没有为此dll打开请求发送任何SMB数据包。

我担心的是,这是Windows Server 2016内核的错误。

在写完上述所有单词之后,问题很明确:没有人知道真正发生了什么,是否有解决方案在Windows Server 2016上为IIS加载远程dll?

1 个答案:

答案 0 :(得分:0)

  • 检查IIS服务器中的root权限
  • 减少安全级别权限