互联网信息服务(IIS)可以像访问本地数据一样访问SMB文件系统上的数据,并提供Web服务和FTP服务,实现网站存储与计算分离。本文介绍如何配置IIS访问NAS文件系统。
背景信息
目前Windows Server仍然是非常流行的网站构建平台。有不少用户选择阿里云ECS Windows实例构建网站服务,将网站内容资源集中存储在一个高可靠、高吞吐的SMB文件系统上,且计算资源和存储资源都支持按需弹性扩容。
IIS提供的FTP服务也同样有着非常广泛的需求。很多Web站点管理员通过FTP来远程管理Web站点的内容,同时还有很多用户希望使用Windows虚拟机上的FTP服务在广域网和阿里云之间传输和共享文件。
本文以IIS 7.5(Windows Server 2008 R2)的设置为例,介绍阿里云文件存储NAS如何为阿里云ECS Window实例提供单节点的Web服务和FTP服务。您也可以使用阿里云负载均衡服务来构建多服务器节点的弹性容错的站点。更多信息,请参见阿里云负载均衡。
- 本文档操作步骤中已提出安全性建议,但不能作为完整的安全配置和实现方案。您需要承担安全方面的所有最终责任,您可以从系统级别(如设置防火墙、ECS实例安全组和及时安装操作系统补丁)和服务级别(如使用阿里云的各个安全产品)来全面保障自己Web服务和数据的安全性。
- 出于安全和管理的考虑,本案例中新增一个普通用户(iis_user)。在提供FTP服务或者在Windows Server2016上运行IIS Web服务时,请使用该用户而不是系统管理员访问数据。

安装Windows IIS
访问SMB文件系统
您的Web资源及配置文件可以集中存储在SMB文件系统共享目录(默认为myshare)上。您可以通过设置权限组来确保当前Web服务器可以读写访问SMB文件系统。
设置Windows IIS Web服务
设置Windows IIS FTP服务
在Windows Server 2016操作系统中,如何实现IIS和阿里云NAS协同工作?
对于Windows Server 2016操作系统,设置Windows IIS Web服务后,还需完成以下配置才能实现IIS和阿里云NAS协同工作。
- 修改SMB客户端的注册表项。
- 在Windows服务器,选择 。
- 在注册表编辑器左侧导航栏,选择 ,右键选择 。
- 设置数值名称为AllowInsecureGuestAuth,数值数据为1,单击确定。
- 指定一个本地用户来访问存储在阿里云NAS上的Web资源。
- 通过IIS使用NAS共享目录中的文件时,会造成IIS后台多次访问NAS共享目录。虽然每次访问时间不长,但是多次叠加可能造成客户端等待时间较长。具体解决方案,请参见如何提升IIS访问NAS的性能。
- IIS访问Js、CSS等网页程序相关的内容非常频繁,建议您将这些内容存储在本地。
- 参照以上内容后仍然产生写入失败等问题,请您参考通过安装和配置AD域解决Windows Server 2016的IIS无法加载SMB文件卷文件的问题处理,或提交工单咨询。
在Windows Server 2019操作系统中,如何实现IIS和阿里云NAS协同工作?
# Define clear text string for username and password
[string]$userName = 'WORKGROUP\administrator'
[string]$userPassword = '****'
# Convert to SecureString
[securestring]$secStringPassword = ConvertTo-SecureString $userPassword -AsPlainText -Force
[pscredential]$credObject = New-Object System.Management.Automation.PSCredential ($userName, $secStringPassword)
New-SmbGlobalMapping -LocalPath z: -RemotePath \\file-system-id.region.nas.aliyuncs.com\myshare -Persistent $true -Credential $credObject
其中,****
为操作系统administrator的密码。
IIS如何写日志到SMB文件系统?
如果需要将IIS日志写入SMB文件系统,需要先使用SYSTEM身份挂载SMB文件系统再进行写入,否则会报错。具体操作,请参见以SYSTEM身份挂载文件系统解决SQLServer使用SMB文件系统的问题
使用SYSTEM身份成功写入日志后,会自动创建W3SVC1日志文件夹存储相关日志文件。