最近开始着手逐步将所有的Web站点由Win2003+IIS6迁移至64位Win2008+IIS7,基本还算顺利。这里就把相关内容整理总结一下。
首先自然是要安装基本运行环境,包括iis,.net framework 1.1,3.5,4.0。这里都没有啥大问题,就是安装.net frame1.1时会报一个兼容性问题的提示,这里不需要理会,继续安装即可,但装完后别忘了再安装.net framework1.1 sp1。安装完后还需要在machine.config里加上以下节点:
<section name="system.webServer" type="System.Configuration.IgnoreSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
其次就要将站点由IIS6迁移到IIS7了,如果服务器上应用系统少,部署简单,那倒是可以考虑拷贝部署目录到新服务器,然后从头进行配置的方式。但如果系统多,配置复杂,那这种方式显然不可取,这时就要使用微软的Web Deployment Tools实现迁移。Web Deployment Tools是一个比较好的工具,平时就在利用它实现多台Web服务器的同步,但它没法实现IIS6到IIS7的同步,那只好采用折中方式。
1.执行msdeploy -verb:getDependencies -source:webserver60命令,检查源服务器的依赖关系,并确保这些依赖关系在目的服务器上已正确安装配置。

2.先后执行msdeploy -verb:sync -source:webserver60 -dest:archivedir=d:\iis,encryptPassword=password -whatif和-verb:sync -source:webserver60 -dest:archivedir=d:\iis,encryptPassword=password
其中前一条命令多了个-whatif选项,这是用于显示该命令的预计执行结果,但不进行实际操作,这条命令执行无误后可以执行后一条命令,将整个站点导出到d盘iis目录下。
3.将d盘iis目录里的所有内容拷贝到目的服务器,并在目的服务器上先后执行msdeploy -verb:sync -source:archivedir=d:\iis,encryptPassword=password -dest:webserver -whatif和msdeploy -verb:sync -source:archivedir=d:\iis,encryptPassword=password -dest:webserver将站点部署到IIS7上。这样就完成了整个站点的迁移。
然后还要检查一下各应用在新的环境下是否正常。这时候很可能就会发现.net framework1.1下的程序有问题,对应的应用程序池会显示对应的.net framework版本为2.0,且无法选择到1.1版本。

这时可以通过执行appcmd命令来实现.net framework版本切换,执行
appcmd set apppool "DefaultAppPool" /managedruntimeversion:v1.1命令,之后你就会发现.net framework版本已经改成了1.1。
最后还要参照IIS6服务器的设置更改一下上传文件的允许大小。.net的程序跟原来一样修改machine.config即可,这里就不多说了。asp程序的修改方法有所不同,Win2003+IIS6下是修改C:\WINDOWS\system32\inetsrv下的metabase.xml文件,但在Win2008+IIS7下就不需要那么麻烦了,只要IIS里配置ASP应用程序属性即可。

当然,如果是通过Web Deployment Tools进行迁移的,那这些设置就已经自动迁移过来了。

将Web站点由IIS6迁移至IIS7的更多相关文章

  1. FineUI从iis6迁移到iis7.5上遇到的奇葩事情

    前天把一台旧服务器上的windows2003+iis6上的fineui项目迁移到了win7+iis7上面来了,没有编译,直接以源码方式运行. 本来运行的好好的,昨天下午在上面用vs2010打开了一下看 ...

  2. ASP.NET程序从IIS6移植到IIS7时出现500.22错误

    最可能的原因:  •    此应用程序在 system.web/httpModules 节中定义配置.  可尝试的操作:  •    将配置迁移到 system.webServer/modules 节 ...

  3. ASP.NET程序从IIS6移植到IIS7时出现500.22错误(转)

    最可能的原因: •    此应用程序在 system.web/httpModules 节中定义配置. 可尝试的操作: •    将配置迁移到 system.webServer/modules 节.也可 ...

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

    原文地址:http://www.splaybow.com/post/iis-6.0-7.0.html 公司的项目需要迁移到IIS7的目标机器中 在此做记录 原来server 2003系统 迁到2008 ...

  5. 构建高性能web站点-1

    以下为阅读<构建高性能web站点>郭欣 著 这本书的适合读者: 1.编写web程序.关心站点性能,并且希望自己做的更加出色的开发人员 2.关心性能和可用性的web架构师 3.希望构建高性能 ...

  6. IIS5.1、IIS6.0、IIS7.5中安装配置MVC 3

    本文主要介绍在IIS5.1.IIS6.0.IIS7.5中安装配置MVC 3的具体办法! 正文: IIS5.1 1. 安装Microsoft .net FrameWork 4.0安装包; 2. 安装AS ...

  7. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第一章:创建基本的MVC Web站点

    在这一章中,我们将学习如何使用基架快速搭建和运行一个简单的Microsoft ASP.NET MVC Web站点.在我们马上投入学习和编码之前,我们首先了解一些有关ASP.NET MVC和Entity ...

  8. 【读书笔记】2016.12.10 《构建高性能Web站点》

    本文地址 分享提纲: 1. 概述 2. 知识点 3. 待整理点 4. 参考文档 1. 概述 1.1)[该书信息] <构建高性能Web站点>: -- 百度百科 -- 本书目录: 第1章 绪论 ...

  9. 如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites]

    如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites] 一.布局页面介绍[Abo ...

随机推荐

  1. css 设置背景图片模糊,内容不模糊

    需求:一个div设置了background: url,现在需要使图片背景模糊,div内的文字清晰显示. 原始代码: <!DOCTYPE html> <html lang=" ...

  2. bx, bp, si, di寄存器的使用规则

    首先,都可以单独使用. 另外,组合使用的情况下: 记住这张图片就行了=_= 意思就是,bx只能和si,di组合.bp只能和si,di组合.

  3. 数据获取以及处理Beta版本展示

    产品描述 这个产品的目的是为了学霸网站提供后台数据获取以及处理操作.在alpha阶段基本调通的基础至上,我们希望在bate版本中加入对于问答对的处理,图片的获取等功能. 预期目标 在alpha阶段,我 ...

  4. 如何在Mac OS系统下配置Java服务器开发环境

    1.http://www.oracle.com/technetwork/Java/javase/downloads/index-jsp-138363.html 安装JDK(可通过java -versi ...

  5. Spring使用ThreadLocal技术来处理这些问题

    过去我习惯于从左到右的思考,因为这符合书写的习惯,对于“好”得前端工程师,我们首先可能会去思考什么是好,好的定义和范围,标准和要求?但现在我习惯于从右到左的思考,因为我觉得越是抽象越难以定义,从粒度更 ...

  6. UIView详解

    MVC架构模式   MVC(Model-View-Controller)是实现数据和显示数据的视图分离的架构模式(有一定规模的应用都应该实现数据和显示的分离).其中,M代表模型,就是程序中使用的数据和 ...

  7. maven项目 启动报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    tomcat在发布项目的时候没有同时发布maven依赖所添加的jar包,所以找不到解决方法:设置一下eclipse:项目 -> properties -> Deployment Assem ...

  8. .net 创建计划任务开机后自动以管理员身份启动运行 win7 ~ win10

    假如要启动 this.exe.以下逻辑中会启动先后关联启动三个实例分别是ABC.先启动第一个实例A,A启动实例B,B启动实例C. 要求: 1.如果没有以管理员权限运行,则请求管理员权限运行,即使没有请 ...

  9. unity, Shader.Find的一个坑

    所以对于没有被任何东西引用,只靠在游戏运行时使用Shader.Find换上去的shader,为了双保险,可以首先放到resources文件夹里,另外,再在ProjectSettings->Gra ...

  10. python获取字典的key列表

    获取字典的所有key: # !/usr/bin/python3.4 # -*- coding: utf-8 -*- b = { 'video':0, 'music':23 } print(list(b ...