.net core mvc部署到IIS导出Word 提示80070005拒绝访问

项目中相信大家经常会遇到导出Word、Excel等需求,在实际开发环境中,一般不会出现什么问题,但当发布到IIS上后可能会遇到各种各样的问题,一般都是权限的问题。前几天把公司项目发布后,出现Word导出失败的问题,查看日志,报的就是80070005拒绝访问的错误,但当使用Kestrel启动的时候,就没有这个问题,只是在IIS上出现了这个错误,IIS权限的问题,也应该是大家经常会遇到的问题了。

80070005详细错误为检索Com类工厂中CLSID为{xxxx-xxxx-xxxx-xxxx}组件时失败,解决方法就是配置服务器中的Com组件,添加相应的权限。

1、打开运行->输入命令dcomcnfg->组件服务->计算机->DCOM配置->Microsoft97-2003 Document

2、或者通过控制面板->管理工具->组件服务->计算机->DCOM配置->Microsoft97-2003 Document

使用以上方法很多时候我们无法从DCOM配置中找到Microsoft97-2003 Document配置选项,这时候可以使用

comexp.msc -32命令,打开组件服务,就可以找到该选项了,也有的说是使用mmc -32命令也可以找到该选项,但是我在win10上使用该命令时打开的是一个空的控制台,需要自己添加控制选项。不论怎样,只要找到Microsoft97-2003 Document选项即可。

配置:

右键该选项属性,选择安全->启动和激活权限->自定义,添加NETWORK SERVICE用户,并勾选本地激活选项,点击确定。同时将访问权限设为自定义,并添加NETWORK SERVICE用户。配置完COM组件后,还是无法导出,这时需要配置IIS的权限,选择发布的项目使用的应用程序池,右键属性->高级设置->进程模型,标识选项默认的是使用ApplicationPoolIdentity,我们将其改为自定义账户,添加服务器的用户名和密码即可,最后重启IIS,问题得以解决。

扫描二维码关注我的公众号,共同学习,共同进步!

原文地址:https://www.cnblogs.com/Allen0910/p/9191893.html

时间: 2024-11-04 06:17:43

.net core mvc部署到IIS导出Word 提示80070005拒绝访问的相关文章

在IIS上Office Word下载失败,检索 COM 类工厂中 CLSID 为000209FF的组件失败,80070005 拒绝访问。

最近在做一个网站时,有一个下载word文档功能,在本地直接调试是可以下载的,但部署到IIS上就出现问题了. 出现问题如下:Error:下载简历方法出错:检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败, 原因是出现以下错误: 80070005 拒绝访问. (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED)). 在网上找了很多方法,最后终于解决了.为了防止下次出现这种问题,特意记下了解决

SharePoint Error occurred in deployment step 'Recycle IIS Application Pool': 0x80070005:拒绝访问

错误出现的前提:多个用户在一台机器上做开发,使用非系统管理员账号时会出现,因为一般创建网站集时指定管理员为系统管理员: Error occurred in deployment step 'Recycle IIS Application Pool': 0x80070005:拒绝访问 使用 Visual Studio 2010 部署时报错,错误截图如下: 原因:当前部署代码的用户不是部署代码网站集的管理员,加上即可: 一般网站集管理员在网站集创建是指定的: 解决这个错误,可以增加权限: 步骤: 

C# 之 读取Word时发生 “拒绝访问” 及 “消息筛选器显示应用程序正在使用中” 异常的处理

1.Asp.net中建立Microsoft.Office.Interop.Word.Application时出现 “ 拒绝访问 ” 错误 项目中要实现在服务器端打开一个Word模版文件,修改其内容后再下载到客户端使用,在Asp.net页面中建立Microsoft.Office.Interop.Word.Application对象时出现“拒绝访问”的错误,提示信息如下: 拒绝访问. 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的

.net core应用部署在IIS上

.net core 2.x版本和1.x版本部署有所不同,确切的说,2.x的部署要求更为简单. 1.x版本在代码上还需要单独设置,2.x则默认的配置已经满足IIS部署了,新的应用没有必要停留在1.x,所以也不太考虑1.x的配置. 2.x的IIS部署其实很简单(由其是相比Linux上部署),使用VS发布后,关键点有两个 安装.NET Core Windows Server Hosting Bundle,win10至少似乎是默认不带的.这是IIS支持.net core程序的必要组件.安装完后,最好重启

vscode创建的asp.net core项目部署到IIS

一.发布项目 在visual studio code中通过命令"dotnet publish",如下图: 这里我把发布位置设置到了D:\WebSite\netcoredemo下. 二.设置IIS 0.安装AspNetCoreModule托管模块,安装后在iis的"模块"就可以看到安装结果,如下图: 安装后: 1.新建站点"netcoredemo",物理路径指向"D:\WebSite\netcoredemo",端口可以随便设置(

asp.net core部署到iis

asp.net core项目部署到IIS稍微不同于之前,记录几个要点: 一.下载安装AspNetCoreModule模块,它包含在.NET Core Windows Server Hosting bundle里面,这个链接或许不是最新的了,官方文档里面有这个链接,到下图所示位置即可找到. 安装完之后,会发现多了个模块: 然后重启iis.如果还是出现以下错误: HTTP Error 502.5 - Process Failure Common causes of this issue: The a

记:ASP.NET Core开发时部署到IIS上出现HTTP Error 502.5 - Process Failure的解决方案

HTTP Error 502.5 - Process Failure Common causes of this issue: The application process failed to start The application process started but then stopped The application process started but failed to listen on the configured port Troubleshooting steps

ASP.NET Core MVC之Serilog日志处理,你了解多少?

前言 本节我们来看看ASP.NET Core MVC中比较常用的功能,对于导入和导出目前仍在探索中,项目需要自定义列合并,所以事先探索了如何在ASP.NET Core MVC进行导入.导出,更高级的内容还需等我学习再给出. EntityFramework Core 在学习ASP.NET Core MVC之前我们来看看在EF Core中如何更新对象指定属性,这个问题之前我们已经探讨过,但是还是存在一点问题,请往下看. public void Update(T entity, params Expr

ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统

一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core WebApi项目,使用默认的Values控制器,这里使用Visual Studio 2019创建一个ASP.NET Core 3.1d的WebApi项目. 创建新项目的时候选项ASP.NET Core Web应用程序,如下图所示: 配置新项目界面界面设置项目名称和位置,如下图所示: 选择.Net Cor