Articles of iis

具有不同SSL证书的2个站点的IIS反向代理

我有一个configuration了GoDaddy帐户的CNAME,我们将其命名为cname.myCompany.com。 cname cname我把它命名为myCompany.com作为我的父域。 myCompany.com拥有自己的SSL证书。 cname(cname.myCompany.com)值指向www.compendiumblog.com(w / c是它自己的SSL证书) 现在,当我做https://cname.myCompany.com – 它加载页面,但有破损的SSL证书。 我试着用IIS(Server 2012R2)反向代理解决这个问题,但似乎没有工作。 我安装了AAR并启用了反向代理。 在IIS中,我创build了一个名为blog.myCompany.com的新服务器场。 取消选中路由规则中的“启用SSL卸载”和URL重写入站规则我将操作设置为“重写”。 将值改写为https://cname.myCompany.com/ {R:0},并将服务器variables设置为HTTP_X_COMPENDIUM_ID = e7dff869-c319-43c9-9bf1-eca9b46gb5de。 保存设置,但不起作用。 我如何去反向代理与IIS?

Kestral,IIS和端口耗尽

通过AWS Beanstalk部署.NET CORE web-socket应用程序。 默认情况下,这将IIS用作反向代理。 不幸的是反向代理使用端口来完成他们的工作,导致端口耗尽。 我们如何configurationIIS扩展到100,000个佣金以上? 或者,我们如何configurationAWS Beanstalk直接在没有IIS的情况下运行kestrel?

IIS将多个URL重写到端口

我有两个进程/应用程序运行在端口8888和端口8890。 我可以通过http:// localhost:8888 & http:// localhost:8890访问我的windows服务器。 我目前使用IIS GUI来重写url。 应用程序请求路由(ARR)和URL重写已安装。 我已经成功地重写或redirect到服务器的所有请求到一个端口 – 本质上我映射“*”通配符到“ http:// localhost:8888 / {R:0}”,它工作时,我访问http:/ / /网站 ! 我怎样才能扩展到以下场景: http:// website / solution1 /应该redirect到端口8888& http:// website / solution2 /应该redirect到端口8890 请帮忙。

IIS重写基于语言的规则和默认语言

我想创build一个基于用户浏览器语言的IIS重写规则,但仅限于一组特定的语言。 我们的网站有英文(en),法文(fr)和荷兰文(nl)。 我可以创build这个重写规则: <rule name="Redirect short url to long url: NEW SYNTAX 2017-11-01" stopProcessing="true"> <match url="^([_0-9a-z-]+)$" /> <conditions> <add input="{HTTP_HOST}" pattern="mydomain\.be$" /> <add input="{HTTP_ACCEPT_LANGUAGE}" pattern="^(en|fr|nl)?" /> </conditions> <action type="Redirect" url="https://www.myotherdomain.be/{C:1}/projects/{R:1}?type=shorturl" appendQueryString="false" redirectType="Found" /> </rule> 当我用三种指定语言之一(en / nl / fr)configuration我的浏览器时,这工作正常。 如URL http://mydomain.be/test将redirect到https://www.myotherdomain.be/nl/projects/test?type=shorturl (当我的浏览器被configuration为荷兰语)。 但是,当我configuration我的浏览器,例如“ru”,那么相同的url将redirect到https://www.myotherdomain.be//projects/test?type=shorturl 对于任何其他语言,我想默认长URL到/ EN /而不是/ /有没有办法使用IIS重写规则做到这一点? 预先感谢您的任何指导!

IIS10 URL重写2.1双重编码问题

我有一个IIS10服务器与ARR 3.0和URL重写模块2.1充当其他几个Web服务器的反向代理。 其他服务器运行在不同的端口上,因此IIS10服务器在端口80上提供“友好的URL”。URL重写用于将请求交给后端服务器。 一个这样的服务器是jenkins 。 Jenkins有一个警告消息,告诉您反向代理是否configuration正确( 更多细节在这里 ),这个警告消息帮助我在反向代理中发现问题。 问题是,url重写是解码和编码我的url,当他们到达jenkins时,他们是不同的浏览器要求。 例: URL重写规则: <rule name="Jenkins Rewrite" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern=".*jenkins.mydomain.*" /> <add input="{HTTPS}" pattern="on" /> </conditions> <action type="Rewrite" url="http://localhost:8080/{R:1}" appendQueryString="true" /> <serverVariables> <set name="HTTP_X_FORWARDED_HOST" value="{HTTP_HOST}" /> <set name="HTTP_X_FORWARDED_SCHEMA" value="https" /> <set name="HTTP_X_FORWARDED_PROTO" value="https" /> </serverVariables> </rule> 发送以下URL时: HTTPS://jenkins.mydomain/administrativeMonitor/hudson.diagnosis.ReverseProxySetupMonitor/testForReverseProxySetup/https%3A%2F%2Fjenkins.mydomain%2Fmanage%3F 我注意到在触发规则之前解码的编码字符,使得{R:1}看起来像这样: /administrativeMonitor/hudson.diagnosis.ReverseProxySetupMonitor/testForReverseProxySetup/https:/jenkins.mydomain/manage/ : /administrativeMonitor/hudson.diagnosis.ReverseProxySetupMonitor/testForReverseProxySetup/https:/jenkins.mydomain/manage/ 经过一番研究,我发现我可以在解码之前使用{UNENCODED_URL}而不是{R:1}来获取请求string,所以我调整了我的规则动作: […]

由于WAS未启动,IIS应用程序池无法启动

我一直在处理与IIS服务的问题。 时不时地,我停止工作,它总是相同的问题:IIS服务和应用程序池将无法启动,由于WAS服务不启动。 而由于奇怪的错误,WAS失败: Windows could not start the Windows Process Activation Service service on Local Computer. Error 13: The data is invalid. Windows could not start the Windows Process Activation Service service on Local Computer. Error 13: The data is invalid. 互联网上有很多关于这个的噪音,但没有为我工作: 与Windows 10 Ent相同的第二台机器已经正常工作 逐行比较C:\Windows\System32\inetsrv\Config目录中的C:\Windows\System32\inetsrv\Config文件只会导致完全匹配有效的XML文件 预期存在的文件夹像C:\inetpub\temp\apppools都在那里 与WAS相关的registry文件都与第二台机器相匹配 对我来说,解决scheme是完全删除IIS和WAS,然后重新启动以重新安装。 我做了很多次 但是,两天之后,问题又回来了,我无法通过重新安装来解决问题。 我一直在网上阅读和尝试不同的东西,但现在我已经耐心地解决了这个问题。 以下是我尝试启动IIS时按照升序发生的一系列事件: 这里是一个警告,发生在上述之后: 我还想补充一点,就在昨天这个问题开始之前,我看到了一系列的错误: […]

为什么在预定的回收事件期间IIS 10中的应用程序池崩溃?

我有一个运行在Windows Server 2016与IIS 10的.NET应用程序。此应用程序configuration有自己的应用程序池。 在同一台服务器上还有其他应用程序,每个应用程序都有自己的应用程序池 每个应用程序池都configuration为从凌晨12:00开始每天以错开的时间间隔进行回收。 随机的一些应用程序池在回收时崩溃,我不知道是什么造成这些崩溃。 如果我再次回收它们,它们会恢复正常。 围绕这次崩溃重复出现的错误是类似的 “工作进程”11268“服务应用程序池”MyApp“中的协议”http“的监听器通道报告了监听器通道故障” 以下是来自事件vrw的事件,当一个这样的应用程序池崩溃与名为MyApp的应用程序相关联时发生。 进程ID为“13276”的服务应用程序池“MyApp”的工作进程已经请求了回收,因为它已经达到了预定的回收时间。 <Event> <System> <Provider Name="Microsoft-Windows-WAS" Guid="{524B5D04-133C-4A62-8362-64E8EDB9CE40}" EventSourceName="WAS" /> <EventID Qualifiers="16384">5076</EventID> <Version>0</Version> <Level>4</Level> <Task>0</Task> <Opcode>0</Opcode> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2017-11-16T06:05:02.544043500Z" /> <EventRecordID>112746</EventRecordID> <Correlation /> <Execution ProcessID="0" ThreadID="0" /> <Channel>System</Channel> <Computer>XYZP00953</Computer> <Security /> </System> <EventData> <Data Name="ProcessID">13276</Data> <Data Name="AppPoolID">MyApp</Data> <Binary /> </EventData> </Event> 一些如何发布的XML没有得到格式正确。 我将再次编辑,看看是否得到修复。 工作进程“11268”服务应用程序池“MyApp”中协议“http”的监听器通道报告监听器通道故障。 数据字段包含错误编号。 5139 […]

HTTP标头 – CONTENT_LENGTH与HTTP_CONTENT_LENGTH

我正在一个IIS Web服务器上使用经典的ASP网站。 当我查看request.serverVariables集合(包含请求http头文件和服务器variables等),我看到以下两个,在我的具体设置中产生100%相同的值。 CONTENT_LENGTH HTTP_CONTENT_LENGTH 在Mozilla文档中,它列出了[Content-Length][1] : Content-Length实体头指示发送给收件人的实体主体的大小(以字节为单位)。 我认为这是指我所看到的HTTP_CONTENT_LENGTH 然后,在服务器variables的IIS文档中,它将CONTENT_LENGTH列为 请求正文的长度。 这只是一个IIS的东西, CONTENT_LENGTH只是HTTP_CONTENT_LENGTH报头的服务器自己的内部副本? (或者我有这个倒退)? 两者之间是否有任何区别,例如某些情况下,每种情况的价值可能会不同?

IIS 6.0应用程序池停止问题

在我的IIS日志中,我发现了警告级别的事件ID 1013,表示停止时间超过了特定Web应用程序的工作进程的预期停止时间。 我的问题是,我怎么知道或跟踪什么原因IIS工作进程停止? 此警告级别的事件ID是否意味着工作进程应用程序池停止或不? 在此先感谢乔治

IIS和DFS上的asmx WebService中偶尔会出现“无法加载文件或程序集”

我们有两个相同的Windows Server 2003盒子托pipe的ASMX Web服务。 Web服务的虚拟目录加载到DFS共享中,两个服务器都指向相同的共享。 我们在互联网和两个networking服务器之间有一个负载平衡器。 在用户尝试访问Web服务上的方法时,看似随机的时间间隔(现在大概是每周两次),IIS返回错误:方法调用中使用的程序集之一的“无法加载文件或程序集”并会在每次调用方法时继续报告,直到应用程序池被回收。 我们还没有发现任何可区分的问题模式。 这就是我所知道的: 缺less的assembly变化(但它总是一个自制的组装) Web服务方法失败 问题出现的时间或间隔没有明显的模式 出现问题时,没有pipe理员用户访问服务器 失败的方法将在一台服务器上正常工作,并在另一台服务器上失败,即使它们都指向同一个bin文件夹 该问题总是可以通过回收应用程序池并且不作其他更改来纠正 我已启用大会活页夹日志,并知道活页夹正在寻找文件的正确位置。 我们的程序集是为.Net 3.5编译的。