通过Windows IIS服务访问阿里云NAS
本文介绍如何配置Windows内置的互联网信息服务(IIS)和阿里云NAS,提供Web服务和FTP服务。
背景信息
阿里云NAS主要面向阿里云ECS实例、E-HPC、容器服务、弹性Web和BatchCompute等计算节点提供文件存储服务,兼容标准的文件访问协议NFS和SMB。
与NFS相比,SMB文件系统访问协议更加适合于Windows操作系统。各个版本的Windows对SMB协议都能很好的支持,绝大多数Windows应用程序不经修改即可通过SMB协议访问阿里云NAS。因此,当应用程序集中运行在ECS Windows实例上时,建议优先考虑使用SMB文件系统。
目前Windows Server仍然是非常流行的网站建构平台。在阿里云现有的用户中,有不少用户选择阿里云ECS Windows实例提供网站服务。通过将网站内容资源集中存储在一个高可靠、高吞吐、按量付费的阿里云NAS(SMB文件系统)上,IIS可以像访问本地数据一样访问阿里云NAS上的数据,从而实现网站的存储和计算服务分离。此外,计算资源和存储资源都可以支持按需弹性扩容。
IIS提供的FTP服务也同样有着非常广泛的需求。很多Web站点的管理员通过FTP来远程管理Web站点的内容,同时还有很多客户希望利用 Windows虚拟机上的FTP服务在广域网和阿里云之间传输和共享文件。
本文以IIS 7.5(Windows Server 2008 R2)的设置为例,介绍如何通过阿里云NAS在阿里云ECS Window实例上提供单节点的Web服务和FTP服务。其它Windows操作系统版本操作步骤类似。您也可以使用阿里云负载均衡服务来建构多服务器节点的弹性容错的站点,详情请参见阿里云负载均衡文档。
- 本文档的操作步骤中提出一些安全性建议,但不能作为完整的安全配置和实现方案。您需要承担安全方面的所有最终责任,您可以从系统级别(如设置防火墙、ECS实例安全组和及时安装操作系统补丁)和服务级别(如使用阿里云的各个安全产品)来全面保障自己Web服务和数据的安全性。
- 出于安全和管理的考虑,本案例中新增一个普通用户(iss_user)。在提供FTP服务或者在Windows Server2016上运行IIS Web服务时,使用该用户而不是系统管理员访问数据。
安装Windows IIS
此处以Windows Server 2008 R2为例,介绍通过服务器管理器添加IIS角色并安装IIS的操作步骤。
在不同Windows 操作系统上安装IIS的详细过程请参见安装 IIS 和 ASP.NET 模块(Windows Server 2012 和 Windows Server 2012 R2)。
创建并访问SMB文件系统
您的Web资源及配置文件可以集中存储在阿里云NAS的SMB共享目录(默认为myshare)上。创建SMB文件系统后,可以通过设置权限组来保证当前Web服务器可以读写访问SMB文件系统。
设置Windows IIS Web服务
设置Windows IIS FTP服务
常见问题
在Windows Server 2016操作系统中,如何实现IIS和阿里云NAS协同工作?
对于Windows Server 2016操作系统,设置Windows IIS Web服务后,还需完成以下配置才能实现IIS和阿里云NAS协同工作,具体操作如下所示。
- 修改SMB客户端的注册表项。
- 打开注册表编辑器。
- 找到注册表项 ,右键选择 。
- 设置数值名称为AllowInsecureGuestAuth,并将其值设置为1。
- 指定一个本地用户来访问存储在阿里云NAS上的Web资源。
- 通过IIS使用NAS共享目录中的文件时,会造成IIS后台多次访问NAS共享目录。虽然每次访问时间不长,但是多次叠加可能造成客户端等待时间较长。您可以调大FileInfoCacheLifetime、FileNotFoundCacheLifetime和DirectoryCacheLifetime这三项注册表项的值(比如修改为600),详情请参见SMB2 Client Redirector Caches Explained。 下的
- 如果找不到以上三个注册表项,则按照Windows的字段格式要求进行创建。
- IIS访问js/css等网页程序相关的内容非常频繁,建议把这些内容放在本地。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论