服务器迁移到 Windows Servec 2008 R2 64 bit 和IIS 7问题记录

近期公司把网站迁移到了新的环境,windows service 2008 64 bit 和IIS 7,问题有点多,对系统使用影响很多,也困扰了我几个星期,现在记录一些主要的注意点

1.组件权限

系统使用了一个记录日志的com组件,还有一些老功能使用的是微软的excel,word,visio组件。由于组件权限导致功能不能使用。这里建议后面直接用apose或者npoi等dll替换,问题真心很多,也不好用。

参考:win2008 R2 64位系统下配置DCOM权限

由於Dcomcnfg是一個32位和配置,在64系統下並不能被完全支持
運行:mmc  -32
然後會彈出一個程序,工菜單中選擇File->Add/Remove Snap
添加Component
Services,然後在Component Services下找到Excel後再進行配置,就和32位系統一樣的了;

其它一样的配置如下
2.对于风险源的导入功能。服务器要装上Excel,并进行一系列的权限设置,如下:
1:在服务器上安装office的Excel软件.
2:在"开始"->"运行"中输入dcomcnfg.exe启动"组件服务"
3:依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置"
4:在"DCOM配置"中找到"Microsoft
Excel 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框
5:点击"标识"标签,选择"启动用户" (备注:如果选择"交互式用户",则你必需登录到系统,IIS 用户才有权限访问EXCEL
COM)
6:点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK
SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限.
7:依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK
SERVICE"用户,然后赋予"本地访问"权限.

8:IIS里面的应用程序池,也要将标识设置为"NETWORK SERVICE"

9:将应用程序池里面网站对应的程序集的运行用户改为"NETWORK SERVICE"

这样,我们便配置好了相应的Excel的DCOM权限.
注意:

1、我是在WIN2003上配置的,在2000上,是配置ASPNET用户

2、查看office的程序文件文件夹是否已经开放权限,如加入everyone

2.定时任务

迁移到IIS7 后发现定时任务(quartz)没有按时执行,原因是IIS7 定期进行回收网站,把定时任务进程杀了,可以把网站设置为不过期,可能会造成内存过大的问题,但是定时任务正常了 。后来发现定时任务会重复执行多次,原因是每次发布网站或者网站更新,就会重新多出一个线程,导致多次执行,我们基本全部是邮件提醒,导致领导很不爽。方法是每次发布需要手动回收应用池。原来的服务器并不会出现这些问题,目前对具体原因还是不太清楚...

参考:http://blog.csdn.net/rryqsh/article/details/8156558

在IIS中找到这个站点所用的程序池,点击“高级设置...”

在打开的列表中更改以下设置:

回收——固定时间间隔(分钟) 改为 0

        ——虚拟/专用内存限制(KB) 改为 0

进程模型——闲置超时(分钟) 改为 0

 这样子,一般情况下程序池就不会被自动回收了,后台一些简单的计算线程就会正常工作

3.handlers

 以前在<system.web> 配置的handlers,后来迁移后发现不执行了。查询得知IIS 7需要放在</system.webServer>下..

posted @ 2015-11-21 10:21  清风君  阅读(509)  评论(4编辑  收藏  举报