将站点从 IIs6 移动到 IIS7.5

Suk*_*tto 6 iis iis-6 asp.net iis-7.5

我需要尽快将站点从 IIS6 (Win Server 2003) 移到 IIS7.5 (Win Server 2008)。最好明天。

该站点本身是经典 asp (vbscript) 和一次性 asp.net (C#) 应用程序的令人愉快的组合(每个 asp.net 应用程序都在其自己的虚拟目录中,并具有独立的 web.config)。

如果相关,这是一种由 40 或 50 个未连接的微型站点组成的研究站点。每个微型站点通常是一个简单的表单,允许用户提交表单,然后在 sqlserver 数据库上运行存储过程并显示结果的图表和/或表格。

几乎不用担心安全问题。数据库连接信息位于中央文件(在经典 asp 的情况下)或应用程序的单独 web.config(那里有很多重复)

为练习添加一点趣味……

  • 我不知道如何管理 IIS
  • 公司不再雇用系统管理员或设置这件事的人。(他们也不会雇用我太久,但我的职业自豪感不允许我放弃这项任务)。
  • 服务器位于相互防火墙的网络上,我必须执行一个复杂的多步骤过程才能将任何内容从一个复制到另一个。

有人能指点我一个速成教程来完成上述任务吗?

我有:

  1. 新盒子上站点文件系统的完整副本
  2. 在新系统上安装了第 3 方图表工具
  3. 从“所有任务-> 将配置保存到文件”右键菜单中的 config.xml 文件。但是,似乎没有办法将其导入新系统。

较新的 IIS 管理器具有完全不同的 UI,我完全迷失了。

请帮忙。


由于 TristanK 的评论,取得了一些进展

  1. 在 IIS6 服务器上安装 msdeploy(完整)

假设示例配置是合理的,因此将默认的空 msdeploy.exe.config 替换为 msdeploy.exe.configsettings.example

  1. 获取站点 ID

    • 打开 IIS6 管理器
    • 从左窗格的树中选择“网站”
    • ID是其中一栏(我的网站是1894277648)
  2. 打开 Web 部署控制台窗口

开始菜单 >> 程序 >> IIS 7.0 扩展 >> Web 部署命令行

  1. 获取站点依赖

    C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1894277648 >research-dependencies.xml

笔记:

  • 使用站点 ID 1894277648)
  • 我假设这是xml。不过也不在乎

    1. 包裹站点

    C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:sync -source:metakey=lm/w3svc/1894277648 -showSecure -dest:package=research.zip > research.log

    1. 将文件复制到 IIS7 服务器

    2. 备份IIS7服务器

  • 看看备份,我们已经有了C:\ WINDOWS \ SYSTEM32 \ INETSRV> APPCMD列表备份BACKUP “CFGHISTORY_0000000006” BACKUP “CFGHISTORY_0000000007” BACKUP “CFGHISTORY_0000000008” BACKUP “CFGHISTORY_0000000009” BACKUP “CFGHISTORY_0000000010” BACKUP “CFGHISTORY_0000000011” BACKUP “CFGHISTORY_0000000012” BACKUP “CFGHISTORY_0000000013”备份“CFGHISTORY_0000000014” 备份“CFGHISTORY_0000000015”

  • 进行新备份

    C:\Windows\System32\inetsrv>appcmd 添加备份“在尝试从 IIS6 服务器迁移 msdeploy 之前进行备份” BACKUP 对象“在尝试从 IIS6 服务器迁移 msdeploy 之前进行备份”已添加

  • 检查它regestered C:\ WINDOWS \ SYSTEM32 \ INETSRV> APPCMD列表备份备份备份 “CFGHISTORY_0000000006” BACKUP “CFGHISTORY_0000000007” BACKUP “CFGHISTORY_0000000008” BACKUP “CFGHISTORY_0000000009” BACKUP “CFGHISTORY_0000000010” BACKUP “备份从OLD-IIS6服务器试图msdeploy迁移之前” "CFGHISTORY_0000000011" 备份 "CFGHISTORY_0000000012" 备份 "CFGHISTORY_0000000013" 备份 "CFGHISTORY_0000000014" 备份 "CFGHISTORY_00150000000

    1. 将站点部署到 IIS7 服务器
  • 设置 research-dependencies.xml 中列出的应用程序池

  • 安装第 3 方图表工具

  • 首先尝试使用“whatif”标志

    msdeploy -verb:sync -source:package="D:\temp\website\research.zip" -dest:metakey=lm/w3svc/1 -replace:match="I:",replace="D:" -whatif > WebDeploySync.log

注意: - lm/w3svc/1 -> "1" - -replace 标志以处理更改的驱动器号

  • 现在尝试真正的

    msdeploy -verb:sync -source:package="D:\temp\website\research.zip" -dest:metakey=lm/w3svc/1 -replace:match="I:",replace="D:" > WebDeploySync 。日志

** 仍然待办 **

  • 处理 web.config (?) 问题 HTTP 错误 500.19 - Internal Server Error 请求的页面无法访问,因为页面的相关配置数据无效

  • 修复 asp 配置文件和每个 web.config 中的数据库连接字符串

  • ? 将 httpodbc.dll 复制到 windows\system32\inetsrv 中?

  • 检查 isapi (?) perl 指向正确的驱动器号

  • 手动检查 50 个左右的报告中的每一个是否“有效”(对于“工作”的某些值)

小智 0

使用虚拟目录时要小心。.config 文件以级联方式从主站点继承,这可能会导致混乱。