一.IIS部署基本问题
将项目部署部署到IIS时,启动网站常会遇到页面报错not found 403 可能原因:
1.应用程序池.Net Framework版本不对,解决方法打开控制面板-->管理工具-->Internet信息服务(IIS)管理器,打开应用程序池选择项目的应用程序,配置为相应版本;
2.在部署项目时经常遇到项目的.Net版本较高,在电脑上装了高版本.Net Framework。报错是因为在IIS先装后装.Net Framework时需要重新注册一次。
解决方法打开文件位置C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe,以管理员身份运行控制台,拖入该软件,输入-i运行注册。
二.网站调用本地组件报错
MVC需要使用windowsCOM组件时,需要在相应的微软应用组件配置相应的权限,不然不能访问相应的应用程序;以本次用到的组件为MicroSoft Excel application;
错误:System.Runtime.InteropServices.COMException (0x80080005): 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,
原因是出现以下错误: 80080005 服务器运行失败 (异常来自 HRESULT:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。
1.运行输入dcomcnfg,或者管理工具,组件服务中找到我的电脑DCOM
2.配置MicroSoft Excel application,属性-安全-自定义中添加network server与everyone,标识节点选择交互式用户;
3.完成上述配置可创建创建应用程序,但是依旧不能打开相应文档;
错误:System.Runtime.InteropServices.COMException (0x800A03EC): Microsoft Excel 不能访问文件“C:\Test\Import\TEST.xlsx”。 可能的原因有以下几个:
文件名称或路径不存在。文件正被其他程序使用。您正要保存的工作簿与当前打开的工作簿同名。
4.此时需要在MVC的web.config的<System.Web><SysTem.Web/>里增加或修改一项<identity impersonate="true" userName="服务器可操作用户名" password="密码"/>
5.最后在需要设置访问的文件夹,在安全中添加具有修改权限的用户network server与everyone;
至此可成功访问到服务器本地的EXCEL文件