IIS6 – 如何在创build网站之后将Inetpub移动到新分区?

如果一个具有多个站点的生产Web服务器已经按照默认设置,那么网站将在C:\INETPUB下创build,并且日志文件将被写入C:\System32\LogFiles

这对C:上的磁盘空间有影响C:随着网站的增长和日志logging的增加。 该分区的大小不容易增加(没有像Acronis Disk Director这样的第三方工具),更好的configuration是将网站和日志文件转移到自己的卷上。

如何将IIS迁移到新的分区?
简单地xcopy每个站点,然后重新configuration每个站点指向新的文件更好吗? 新网站仍然会在C:\INETPUB上创build,除非网站pipe理员记得更改默认设置。 而虚拟文件夹呢,可能被深埋而容易被遗漏?

或者IIS可以一次全部移动,保持相对的结构,但是换一个C: for D:\无论它出现在哪里?

移动大的子目录另一个想法可能是使用虚拟目录将一些大的子目录(例如上传文件夹)redirect到另一个子目录。

IIS 6.0的一些设置可以设置为“全局”,如日志文件的默认启动path。 请参阅TechNet上的这篇文章:

更改默认网站设置(IIS 6.0)

但是,您更改的某些设置不会影响您现有的网站。 例如,如果您为日志文件设置默认path,则这不会更改现有日志文件的文件夹。

在IIS安装期间,为分配给网站的各种属性设置默认值。 可以在全局级别设置属性,影响服务器上的所有网站,单个站点级别,目录级别或文件级别的属性。 IIS使用inheritance模型,这意味着较高级别上的设置会自动由较低级别inheritance。 较低级别的设置可以单独编辑,以覆盖下一级的inheritance设置。

如果您更改较低级别的设置,稍后更改与较低级别设置冲突的较高级别的设置,将会提示您select是否要更改较低级别的设置以匹配新的较高级别设置。

关于新网站的主页path:如果您创build新的网站,IIS向导将始终提示您inputpath。

如果你不得不将文件迁移到一个新的文件夹中,我会一个接一个地去做(如果你没有上百个文件的话,那么就需要一些脚本)。 确保你testing的网站,并检查是否有需要“特殊”权限的目录。

您可以使用免费工具(如Junction)将c:\ inetpub \ wwwroot指向另一个磁盘卷上的文件夹。 (使用xcopy确保以与现有相同的权限复制文件和文件夹。)

这样,您就可以将磁盘卷放在适当的位置,随着存储需求的增长,您可以扩展/跨越多个磁盘。 同时保持IIS默认设置不变。

日志文件目录也可以做到这一点,或者你可以将压缩应用到日志文件目录和/或定期将其归档,这可能是一个很好的做法。

我build议你移动你的inetpub文件夹的内容到另一个分区,然后使用磁盘pipe理(diskmgmt.msc),将该分区挂载到C:\ Inetpub中。 IIS应该注意到没有区别,因为C:\ Inetpub被透明地redirect到另一个分区。