标签: iis-10

发布到 IIS 后启用 CORS 不起作用

我将 dotnet core 2.2 web api 应用程序托管到本地 IIS。当我运行托管站点时,站点正在运行。我正在尝试从 angular 登录,但它不起作用。

它说访问 XMLHttpRequest at 'http://192.168.43.143:100/Auth/Login' from origin 'http://localhost:4200' has been Blocked by CORS policy: No 'Access-Control-Allow-Origin' header存在于请求的资源上。

注意:它在本地工作。没有发生 CORS 政策问题

我在 ConfigureServices 中添加了 cors 策略并提供中间件来添加 UseCors()。

public void ConfigureServices(IServiceCollection services)
{
   services.AddCors(c =>  
            {    
                c.AddPolicy("AllowOrigin", options => options.AllowAnyHeader()
                    .AllowAnyMethod().AllowAnyOrigin()
                    .SetIsOriginAllowed((host) => true).AllowCredentials());  
            });

   services.Configure<MvcOptions>(options => {
                options.Filters.Add(new CorsAuthorizationFilterFactory("AllowOrigin"));
            });
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    app.UseCors("AllowOrigin");
    app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)

我安装的软件详细信息如下,

  • 系统:Windows 10
  • 点网核心 SDK:2.2.110 & 3.1.201
  • Windows 服务器托管:2.2.1 …

.net-core iis-10 asp.net-core-webapi

7
推荐指数
1
解决办法
6033
查看次数

IIS缓存已删除的SSL证书

我在Windows 2016上使用IIS 10

每当我更新我的SSL证书并将其应用于绑定IIS时,不会使用该证书,而是继续使用旧证书.

我迄今为止所尝试过的事情 -

  1. 重启网站
  2. 重新启动应用程序池
  3. 重启IIS
  4. 从IIS/Windows存储中删除旧证书

重新启动Windows确实每次都解决它.

iis ssl iis-10 windows-server-2016

6
推荐指数
1
解决办法
1973
查看次数

错误(消息:找不到请求的集合元素.)Docker IIS

运行由下面的文件创建的docker容器时出错

FROM microsoft/iis

RUN mkdir C:\site

RUN powershell -NoProfile -Command \
    Import-module IISAdministration; \
    New-IISSite -Name "Site" -PhysicalPath C:\site -BindingInformation "*:8080:"

Add dist\ C:\site 

ENV COMPOSE_CONVERT_WINDOWS_PATHS = 1

EXPOSE 80
Run Code Online (Sandbox Code Playgroud)

然后:

docker run -p 4000:80 app-temp1
Run Code Online (Sandbox Code Playgroud)

ERROR ( message:Cannot find requested collection element. ) Applied configuration changes to section "system.applicationHost/applicationPools" for "MACHINE/WEBROOT/APPHOST" at configuration commit path "MACHINE/WEBROOT/APPHOST"

iis powershell docker iis-10

6
推荐指数
1
解决办法
1621
查看次数

验证web.config的工具

有没有可以用来验证web.config的工具?我问的原因是该文件似乎是有效的XML,而IIS却在抱怨该文件无效。没有解释或指示原因。

提前致谢。

编辑:

HTTP错误500.19-内部服务器错误无法访问请求的页面,因为该页面的相关配置数据无效。详细的错误信息:模块IIS Web核心通知未知的处理程序尚未确定错误代码0x8007000d配置错误
配置文件\?\ C:\ DignityFiles \ Source \ simplicity \ Simplicity \ web.config请求的URL http://simplicity-local.dignitytest。 co.uk:80/ 物理路径
登录方法尚未确定登录用户尚未确定配置来源:

-1:0

更多信息:如果在读取Web服务器或Web应用程序的配置文件时遇到问题,则会发生此错误。在某些情况下,事件日志可能包含有关导致此错误的原因的更多信息。

查看更多信息»[这将带您进入“ https://support.microsoft.com/en-gb/help/942055/-http-error-500-19-error-when-you-open-an-iis-7 -0-网页 “]

IIS错误的屏幕截图

支持页面的屏幕截图

链接到web.config(注意:敏感信息已被删除)

iis visual-studio visual-studio-2015 iis-10

6
推荐指数
1
解决办法
6575
查看次数

缺少 IIS 10.0 上的 asp.net 功能

我正在使用 IIS 10.0 并且 ASP.NET 功能部分未显示

我的环境:Windows Server 2016

我的问题是类似的问题张贴在这里:没有asp.net的IIS 7.5功能没有显示ASP.NET在IIS 7.5功能

这些帖子中提到的“添加功能”修复不适用,因为它已经正确配置(见图)

windows server 2016 iis 10.0 缺少 asp.net 部分

.net asp.net iis iis-10 windows-server-2016

6
推荐指数
2
解决办法
1万
查看次数

HTTP 错误 404.17 未找到 - Windows Svr 2016 上的 IIS 10

我正在尝试提供一个带有网络表单的网站。这是一个从框架 3.5 转换到 4.6.1 的旧项目。我收到的错误消息是:

HTTP 错误 404.17 - 未找到 请求的内容似乎是脚本,静态文件处理程序不会提供服务。最可能的原因:请求与通配符 MIME 映射匹配。该请求被映射到静态文件处理程序。如果有不同的先决条件,请求将映射到不同的处理程序。

经过一番挖掘,我们发现了一些建议,以确保安装所有 .NET Framework 功能。

在此输入图像描述

在过去,最重要的是使用 aspnet_regiis -i 重新注册 ASP.Net,但这在我的操作系统上不起作用。所以我也尝试了这个命令: dism /online /enable-feature /featurename:IIS-ASPNET45 /all 结果说操作成功完成,但仍然不起作用。

我在 IIS 的 ISAPI 过滤器中发现奇怪的是没有 ASP.Net 4 的条目,只有 ASP.NET 2。

在此输入图像描述

我还能尝试什么?

asp.net webforms iis-10

6
推荐指数
0
解决办法
8301
查看次数

无法在 IIS 10.0 中使用命令行 VSIISExeLauncher.exe 启动进程

星期四晚上,我正在开发一个用 ASP.NET Core 2.1 构建的项目(正在为 ASP.NET Core 2.2 做准备),该项目在本地 IIS 10.0(不是IIS Express)上运行,并且能够毫无问题地运行它。星期五早上,进入办公室后,每次尝试在 Visual Studio 中运行解决方案时,我都会遇到以下错误:

  • 无法启动进程 C:\Program Files (x86)\dotnet\dotnet.exe。Web 服务器请求失败,状态代码为 502,网关错误。完整响应已写入 [file_name].html。

当我打开 [file_name].html 时,我得到了响应:

  • HTTP 错误 502.5 - ANCM 进程外启动失败

当我打开事件查看器时,我得到了响应:

  • 具有物理根“[路径]”的应用程序“MACHINE/WEBROOT/APPHOST/DEFAULT WEB SITE/[Path]”无法使用命令行“[Path]\bin\IISSupport\VSIISExeLauncher.exe -argFile IISExeLauncherArgs.txt”启动进程,错误代码=“0x800700c1”:0。

我有:

  • 通过 Windows 功能关闭和打开 IIS,确保检查了正确的 Internet 信息服务功能
  • 创建了一个应用程序池,其中 [.NET CLR 版本] 设置为“无托管代码”,[托管管道模式] 设置为“集成”
  • 卸载并重新安装:IIS URL 重写为 IIS
  • 卸载并重新安装:Microsoft .NET Core SDK - 2.1.504 (x64)
  • 卸载并重新安装:Microsoft .NET Core SDK - 2.1.504 (x84)
  • 卸载并重新安装:Microsoft .NET Core SDK - 2.2.104 (x64)
  • 卸载并重新安装:Microsoft .NET Core …

iis iis-10 asp.net-core asp.net-core-2.1 asp.net-core-2.2

6
推荐指数
1
解决办法
6016
查看次数

如何设置“web.config”文件以显示完整的错误消息(.NET Core 2.1)

我在IIS上托管了我的 ASP.NET Core 应用程序(使用文件夹内发布方法)。我尝试创建自己的web.config文件以查看客户端的详细错误消息。所以我添加了文件web.config

<configuration>
    <system.web>
        <customErrors mode="Off" />
    </system.web>
    <system.webServer>
        <httpErrors errorMode="Detailed" />
    </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我重新启动 IIS 后,什么也没发生。客户端仍然收到默认错误:

在此处输入图片说明

我可以使用文件web.config以某种方式获取有关错误的其他信息吗?

web-config iis-10 asp.net-core

6
推荐指数
3
解决办法
1万
查看次数

在asp.net核心应用程序中实现了IHostedService,如何在没有IIS首次请求的情况下运行它?

我已经在asp.net核心网站中实现了IHostedService。它运作良好,但问题是我希望在托管服务器启动或IIS服务重新启动时启动它,但除非有第一个对网站的请求进入,否则它不会启动。

  • 该网站托管在IIS 10.0.18版上
  • AppPool处于“始终运行”模式
  • 网站上的“ PreloadEnabled”是“ True”。
  • 将“ .NET CLR版本”设置为“无托管代码”或“ v4.0.xxxxxx”没有帮助。
  • dotnet核心版本为2.2,并安装了dotnet核心托管捆绑包。

更新1: @Arthur建议的“应用程序初始化模块”没有帮助。既不在站点级别,也不在服务器级别。

我使用的配置:

    <applicationInitialization
         doAppInitAfterRestart="true"
         skipManagedModules="false"
         remapManagedRequestsTo="init.htm">
        <add initializationPage="/init.htm" hostName="localhost"/>
    </applicationInitialization>
Run Code Online (Sandbox Code Playgroud)

更新2:这是我实现接口的方式

internal class PaymentQueueService : IHostedService, IDisposable
{
    private readonly ILogger _logService;
    private Timer _timerEnqueue;

    public PaymentQueueService(ILogger logService)
    {
        _logService = logService;
    }

    public Task StartAsync(CancellationToken cancellationToken)
    {
        _logService.LogInformation("Starting processing payments.");

        _timerEnqueue = new Timer(EnqueuePayments, null, TimeSpan.Zero,
            TimeSpan.FromSeconds(10));

        return Task.CompletedTask;
    }

    private void EnqueuePayments(object state)
    {
        _logService.LogInformation("Enqueueing Payments.");
    }

    public Task StopAsync(CancellationToken cancellationToken)
    {
        _logService.LogInformation("Stopping processing …
Run Code Online (Sandbox Code Playgroud)

c# iis .net-core iis-10 asp.net-core

6
推荐指数
1
解决办法
170
查看次数

IIS 10 - HTTP 错误 413.1 - 请求实体太大

我在使用 IIS 10 和 .Net 发布大文件时遇到问题。我收到的错误代码来自 IIS:

HTTP Error 413.1 - Request Entity Too Large
The request filtering module is configured to deny a request that exceeds the request content length.
Run Code Online (Sandbox Code Playgroud)

我在网上找到了很多解决方案都不起作用。以下是我对 IIS 所做的更改。这些更改是在托管我遇到此问题的应用程序的默认网站下完成的。对默认网站所做的更改已传播到其中包含的所有网站。

在此输入图像描述

在此输入图像描述

在此输入图像描述

我还将 uploadReadAheadSize 设置为 2147483647:

在此输入图像描述

我尝试上传的文件大小为 97 MB。我缺少什么?

iis iis-10

6
推荐指数
1
解决办法
2万
查看次数