[转]IIS6.0迁移至IIS7.0

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]IIS6.0迁移至IIS7.0相关的知识,希望对你有一定的参考价值。

原文地址:http://www.splaybow.com/post/iis-6.0-7.0.html

 

公司的项目需要迁移到IIS7的目标机器中 在此做记录

原来server 2003系统 迁到2008中

目标:
将IIS6的所有网站包括Application Pools全部迁移至IIS7.5
环境:
Source:Windows Server 2003 SP2,IIS6
Dest:Windows Server 2008 R2,IIS7.5
工具:
Web Deploy 2.0
下载链接:http://www.iis.net/download/webdeploy

[我用的是3.5版本]

实施:
1.检测II6依赖的组件和Application Pools 查询当前IIS下站点及所需要的配置:
C:\Program Files\IIS\Microsoft Web Deploy V2>msdeploy -verb:getDependencies -source:webserver60 

显示内容:
Info: Object configProtectedData (MSDeploy.webServer60/webServer60/machineConfig
32[@path=‘/‘]/location[@path=‘‘]/configProtectedData) skipped due to skip directive ‘ConfigProtectedData’.
<OUTPUT>
<DEPENDENCYINFO>
<DEPENDENCIES>
<DEPENDENCY name=”AnonymousAuthentication” />
<DEPENDENCY name=”WindowsAuthentication” />
<DEPENDENCY name=”ISAPIFilter” />
<DEPENDENCY name=”ServerSideIncludeDisabled” />
<DEPENDENCY name=”AspNet2.0″ />
<DEPENDENCY name=”HttpCompressionStatic” />
<DEPENDENCY name=”HttpCompressionDynamic” />
</DEPENDENCIES>
<APPPOOLSINUSE>
<APPPOOLINUSE name=”DefaultAppPool” definitionIncluded=”True” />
<APPPOOLINUSE name=”M114″ definitionIncluded=”True” />
</APPPOOLSINUSE>
<ISAPIS>
<ISAPI enabled=”False” dll=”C:\WINDOWS\system32\inetsrv\httpodbc.dll” />
</ISAPIS>
</DEPENDENCYINFO>
</OUTPUT>
C:\Program Files\IIS\Microsoft Web Deploy V2>
dependency name后面的就是所需的组件,在目标机器上安装相关组件
apppoolInUse name后面的就是正在使用的Application Pools
2.IIS6导出所有网站:
msdeploy -verb:sync -source:webserver60 -dest:archivedir=d:\wwwroot,encryptPassword=password -whatif
msdeploy -verb:sync -source:webserver60 -dest:archivedir=d:\wwwroot,encryptPassword=password
备注:
webserver60表示IIS所有网站(含所有Application Pools)
encryptPassword=password表示有SSL网站时需使用
-whatif 表示只是检测有没有错误,并不会报错,如检测正常,即可去掉,就是导出了
3.IIS7.5导入所有网站:
msdeploy -verb:sync -source:archivedir=d:\wwwroot,encryptPassword=password -dest:webserver60 -whatif
msdeploy -verb:sync -source:archivedir=d:\wwwroot,encryptPassword=password -dest:webserver60
参考:
ssl参考:http://forums.iis.net/t/1156168.aspx
迁移参考:http://learn.iis.net/page.aspx/427/migrate-a-web-site-from-iis-60-to-iis-7-or-above/

  -------------  -------------  -------------分割  -------------  -------------  -------------

发现的问题:

目标平台是.netFramework4.0 源平台是.netFramework2.0 

出现平台不同的情况 解决问题如下

https://blogs.msdn.microsoft.com/ericparvin/2015/04/03/error_framework_versions_do_not_match/

在C:\Program Files\IIS\Microsoft Web Deploy V3目录下 找到 msdeploy.exe.config文件

<configuration> 
  <startup  useLegacyV2RuntimeActivationPolicy="true" > 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" /> 
    <supportedRuntime version="v2.0.50727" /> 
  </startup> 
</configuration>

将 <supportedRuntime version="v2.0.50727" />

 放在  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" /> 

前面!!!!!! 

之后尝试导入成功。

 

以上是关于[转]IIS6.0迁移至IIS7.0的主要内容,如果未能解决你的问题,请参考以下文章

iis7.0的运行模式的方法简介

IIS7.0经典和集成的区别

IIS7.0 到 IIS6.0

iis6.0+php5.6无法加载firebird模块

IIS上传大文件

IIS经典模式VS集成模式