标签: iis-8

替代Windows Server 2012上的注册ASP.NET 4.5

我运行WCF服务时收到MIME没有注册错误.我使用此链接来解决此问题.之后我开始收到另一个错误,要求我用IIS注册ASP.NET框架.所以我使用了"aspnet_regiis"命令,但它显示我跟随错误.

Microsoft (R) ASP.NET RegIIS version 4.0.30319.17929
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation.  All rights reserved.
Start installing ASP.NET (4.0.30319.17929).
This option is not supported on this version of the operating system.  Administr
ators should instead install/uninstall ASP.NET 4.5 with IIS8 using the "Turn Win
dows Features On/Off" dialog,  the Server Manager management tool, or the dism.e
xe command line tool.  For more details please see http://go.microsoft.com/fwlin …
Run Code Online (Sandbox Code Playgroud)

aspnet-regiis.exe iis-8 windows-server-2012

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

当apphost配置中存在system.web配置时,IIS 8中的HTTP错误500.19

我们有一个实用程序,可以在客户服务器上安装时自动设置ASP.NET Web应用程序.此实用程序通常在applicationHost.config中为新应用程序的位置路径添加许多配置.我们使用Microsoft.Web.Administration配置类以编程方式执行此操作.

这在IIS 7.0中工作正常,IIS 7.5,但是当我们尝试安装IIS 8相同的配置(Server 2012中),我们开始变得因为一个所谓正常的XML元素的托管服务器上的所有内容500.19服务器错误(HRESULT 0x8007000d) .我系统地完成了我们安装的所有配置,它似乎是system.web/httpRuntime maxRequestLength属性(见下文).似乎system.web配置元素本身就是罪魁祸首,因为错误在消除之前不会消失.

我已经证实了的System.Web /的httpRuntime节定义指出它是无处不在允许的,你可以在配置的其他级别(例如,web.config中)没有问题设置的System.Web配置.为什么我们不能在applicationHost.config中设置它?

<location path="Default Web Site/ManagementConsole">
    <!-- ... more config ... -->
    <system.web>
        <httpRuntime maxRequestLength="10240" />
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

编辑:我原来的职位,该文件中引用的500.19错误是临时的应用程序池的配置文件(C后发现:\的Inetpub\TEMP\apppools\apppoolname\apppoolname.config该文件的内容是:

<!-- ERROR: There's been an error reading or processing the applicationhost.config file.  Line number: 905  Error message: The configuration section 'system.web' cannot be read because it is missing a section declaration
-->
Run Code Online (Sandbox Code Playgroud)

但是,当我进入的applicationHost.config并添加段组定义的System.Web和的httpRuntime,在500.19的变化消息的部分定义,声称有重复的System.Web /的httpRuntime定义!所以我无法定义它,我无法定义它.什么??

asp.net iis iis-8

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

Windows 8笔记本电脑上的空白iis8 localhost页面

美好的一天,

我正在尝试在Windows 8笔记本电脑上安装IIS.当我输入[http:// localhost]时,它会给我一个空白页面.我可以ping localhost和127.0.0.1并获得回复和gmail开发人员工具给我200状态的状态.我安装了McAfee全面防护,并且我在其上禁用了防火墙.我也禁用了Windows防火墙.我刚刚卸载了Skype.我完全绕过了我的路由器并直接从调制解调器连接.我重新启动,没有.只是想获得默认的iis页面并运行Nothing正在运行请协助.

windows-8 iis-8

9
推荐指数
1
解决办法
8318
查看次数

ServerManager.OpenRemote的凭据

我正在尝试使用ServerManager.OpenRemote(来自Microsoft.Web.Administration),但无法找到有关如何从当前用户提供不同凭据的文档.我尝试过SimpleImpersonation(来自你如何在.NET中进行模拟?)它给了我同样的错误:

System.UnauthorizedAccessException - 由于以下错误,从机器[...]检索具有CLSID {2B72133B-3F5B-4602-8952-803546CE3344}的远程组件的COM类工厂失败:80070005 [...]."

远程计算机上的防火墙已关闭.UAC已禁用.

security impersonation iis-7.5 iis-8

9
推荐指数
1
解决办法
7643
查看次数

检索具有CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6}的组件的COM类工厂失败

我正在创建停止IIS默认网站的应用程序.我使用PowerShell脚本来停止网站,因为该脚本是从我的网站执行的.

这是我的脚本:

Import-Module C:\Windows\System32\WindowsPowerShell\v1.0\Modules\WebAdministration
Stop-Website 'Default Web Site'
my copy code
Start-Website 'Default Web Site'
Run Code Online (Sandbox Code Playgroud)

这是我的C#代码:

PowerShell _PowerShell = PowerShell.Create();

Runspace rs = RunspaceFactory.CreateRunspace();
rs.Open();

_PowerShell.Runspace = rs;
_PowerShell.AddScript(@"Set-ExecutionPolicy RemoteSigned -scope LocalMachine").Invoke();
_PowerShell.AddScript(@"E:\DE.TEST\Power_Shell\Scripts\StopIISDefaultSite.ps1").Invoke();

if (_PowerShell.HadErrors)
{
    Collection<ErrorRecord> errors = _PowerShell.Streams.Error.ReadAll();

    foreach (var item in errors)
    {
        Console.WriteLine(item.ToString());
    }
}

Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

它显示以下错误

检索具有CLSID {688EEEE5-6A7E-422F-B2E1-6AF00DC944A6}的组件的COM类工厂由于以下错误而失败:80040154未注册类(HRESULT异常:0x80040154(REGDB_E_CLASSNOTREG)).

c# asp.net iis powershell iis-8

9
推荐指数
1
解决办法
6982
查看次数

在IIS上运行MVC 6 Beta 8应用程序

我正在尝试发布我的MVC 6 Beta 8应用程序.我能够成功地将它发布到Azure,但是当我尝试将其发布到ASPHostPortal时,我收到500错误.

所以我尝试将应用程序发布到本地IIS,但也失败了.首先,我发现我需要安装HttpPlatformHandler(否则IIS无法加载web.config).但即使在那之后,我也得到了502.3错误.

HTTP Error 502.3 - Bad Gateway
There was a connection error while trying to route the request.
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

同样在事件日志中,我可以从HttpPlatformHandler看到错误1000而没有描述.但它说"进程'0'未能启动.端口= 13679,错误代码='-2147024894'."

stdout.log已创建但为空.

这是我的web.config:

<configuration>
  <system.webServer>
    <handlers>
      <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
    </handlers>
    <httpPlatform processPath="..\approot\web.cmd" arguments="" stdoutLogEnabled="true" stdoutLogFile="stdout.log" startupTimeLimit="3600"></httpPlatform>

    <httpErrors errorMode="Detailed" />
    <asp scriptErrorSentToBrowser="true" />
  </system.webServer>

  <system.web>
    <customErrors mode="Off" />
    <compilation debug="true" />
  </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我从哪里开始?

asp.net-mvc iis-8 asp.net-core-mvc

9
推荐指数
1
解决办法
3379
查看次数

VS.NET 2015 ENT Web部署ASP.NET Core 1错误ERROR_USER_UNAUTHORIZED?

我已在具有新站点的本地Windows 2012服务器上设置了Web部署.

我已在IIS服务器级别和站点级别通过IIS管理器权限设置管理员权限.

我为MySiteApp创建了一个应用程序池和一个虚拟目录.

My Web Deploy在VS.NET 2015上发布设置:

服务器:192.168.45.60站点名称:TestSite/MySiteApp用户名:TESTSERVER\Administrator

验证发布配置文件上的连接传递确定.

添加True到.pubxml

尝试发布到服务器时,我收到错误:

错误错误:远程服务器返回错误:(401)未经授权.错误代码:ERROR_USER_UNAUTHORIZED

在Windows Server 2012事件查看器中,我可以看到此错误:

IISWMSVC_LOGIN_UNKNOWN_ERROR

检索登录信息时发生意外错误.

异常:System.Runtime.InteropServices.COMException(0x8007000D):站点名称无效

Microsoft.Web.Administration.SiteCollection.get_Item(String)上的Microsoft.Web.Administration.Interop.IAppHostProperty.set_Value(Object value)at Microsoft.Web.Administration.ConfigurationElementCollectionBase`1.FindElementWithCollectionKey(String elementName,String collectionKey,Object value)在Microsoft.Web.Management.Server.WebManagementHttpModule的Microsoft.Web.Management.Server.ApplicationManagementUnit..ctor(IManagementContext context,String siteName,String applicationPath)上的Microsoft.Web.Management.Server.ApplicationManagementUnit.EnsureDefinition()处. Microsoft.Web.Management.Server.WebManagementHttpModule.OnApplicationPostAuthorizeRequest(Object sender,EventArgs e)中的CreateManagementUnit(HttpRequest请求)

进程:WMSvc User = TESTSERVER\Administrator

如果我在.pubxml更改如下:

<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>

<MSDeployPublishMethod>RemoteAgent</MSDeployPublishMethod>
Run Code Online (Sandbox Code Playgroud)

并添加 <AuthType>NTLM</AuthType>

然后我就可以毫无问题地发布了.

我想我没有正确设置WMSVC发布的东西.

谢谢你的帮助.

阿萨夫

webdeploy iis-8 visual-studio-2015 asp.net-core

9
推荐指数
1
解决办法
816
查看次数

New-WebBinding:无法检索cmdlet的动态参数

我们正在使用Windows 2012 Server R2.

我们正在尝试自动创建LetsEncrypt证书.我们正在使用LetsEncrypt-Win-Simple(https://github.com/Lone-Coder/letsencrypt-win-simple).

一旦创建了证书(通过LetsEncrypt.exe),我们就会调用一个.bat脚本(使用--script和--scriptparameters标志).这将运行powershell.exe并尝试创建必要的IIS绑定..bat文件中的行是:

powershell.exe -file c:\temp\SSLIISBinding.ps1 %1 %2 %3 %4
Run Code Online (Sandbox Code Playgroud)

%1-4是LetsEncrypt传入的args.在powershell脚本中,我们尝试运行的命令是:

$iis_host_name = $args[0]
$iis_site_name = $args[1]
$certificate_hash = $args[2]
$certificate_store = $args[3]

"IIS Host Name: " + $iis_host_name
"IIS Site Name: " + $iis_site_name
"Certificate Hash: " + $certificate_hash
"Certificate Store: " + $certificate_store

$guid = [guid]::NewGuid().ToString("B")
netsh http add sslcert hostnameport="${iis_host_name}:443" certhash=$certificate_hash certstorename=$certificate_store appid="$guid"
New-WebBinding -name $iis_site_name -Protocol https  -HostHeader $iis_host_name -Port 443 -SslFlags 1
Run Code Online (Sandbox Code Playgroud)

args传入.bat罚款,因为我们输出它们并且它们正确显示.

如果我们自己运行.bat文件,它就能完美运行.如果它被LetsEncrypt.exe调用则失败,报告以下问题:

New-WebBinding : Cannot retrieve the dynamic …
Run Code Online (Sandbox Code Playgroud)

windows powershell batch-file iis-8 lets-encrypt

9
推荐指数
1
解决办法
4440
查看次数

无法连接到运行IIS的服务器上的Localhost

我最近在Windows 2012 R2服务器上安装了IIS,似乎无法连接到localhost,IP,服务器DNS等.我尝试了以下内容,似乎没有任何帮助:

  1. 在CMD中运行netstat -ano来检查端口:80正在侦听(它是)
  2. 将站点绑定到所有未分配的端口以及端口80上的IP地址(无主机名)
  3. 调整wwwroot文件夹上的安全权限以确认IIS_IUSRS具有访问权限并尝试添加IUSR
  4. 将"加载用户配置文件"的"应用程序池"设置从"假"更改为"真"
  5. 编辑hosts文件以添加该行 127.0.0.1 localhost
  6. 确保启用了匿名身份验证,但未启用其他身份验证
  7. 暂时禁用计算机上运行的MacAfee

不知道还有什么可以尝试或者它可能在这里失败.

windows iis iis-8 windows-server-2012

9
推荐指数
2
解决办法
4万
查看次数

在部署到IIS应用程序时升级FSharp.Core版本,程序集引用错误

我们FSharp.Core.dll在IIS 8(ASP.NET Web API)上部署Web应用程序时进行了升级,并在部署后立即开始查看FSharp.Core FileLoad异常.FSharp.Core.dll从版本就4.3.0.04.3.1.0.

我们的标准自动部署涉及使用更新的二进制文件(dll),global.asax和web.config替换应用程序文件夹内容,从而导致IIS回收应用程序池. FSharp.Core.dll捆绑作为构建的一部分.我们的应用程序部署到负载平衡的环境中.我们的自动部署脚本使用"robocopy"清除应用程序目录(下面的mywebapp)并将新内容复制到其位置.

典型的IIS应用文件夹结构:

mywebapp/bin/fsharp.core.dll
mywebapp/bin/custom-fsharp-lib.dll
mywebapp/bin/custom-csharp-lib.dll
mywebapp/bin/System.Web.Http.dll, etc…
mywebapp/global.asax
mywebapp/web.config
Run Code Online (Sandbox Code Playgroud)

我们观察到,如果应用程序在部署期间未提供请求,则部署成功完成.但是,如果应用程序处于负载状态并在部署期间提供请求,则应用程序会在部署完成后立即为每个后续请求抛出异常:

处理https:// websiteName/application/endpoint的未处理异常处理POST :System.IO.FileLoadException无法加载文件或程序集'FSharp.Core,Version = 4.3.1.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(来自HRESULT的异常:0x80131040) - 在WebAppFunction.Execute ... ..(等)

看到此异常后,我们检查了应用程序二进制文件并看到了该FSharp.Core.dll版本4.3.1.0(即已正确部署升级版本).看来,如果在部署期间提供流量,则新部署的应用程序无法找到正确的FSharp.Core.dll版本,即使它存在于应用程序bin文件夹中.看来应用程序可能仍然对旧FSharp.Core.dll版本有一些处理.

服务器重新启动,IISReset或回收IIS apppool后,此问题仍然存在.我们的解决方案是将部署回滚到之前的版本(with FSharp.Core.dll v4.3.0.0),之后应用程序恢复.然后,我们将新构建(with FSharp.Core.dll v4.3.1.0)单独部署到每个服务器,同时在apppool停止的情况下退出负载均衡器,从而确保在部署期间无负载,并且新构建成功部署.

在部署Web应用程序期间,我们从未观察到此行为,无论是否正在升级程序集版本.有没有其他人遇到过这个问题FSharp.Core.dll,如果有的话,可以解释这个行为吗?

f# iis-8 asp.net-web-api2

9
推荐指数
1
解决办法
400
查看次数