4.4.2. Internet信息服务(IIS) ¶
4.4.2.1. 先决条件¶
- 您正在按照“ 系统要求 ”中所述使用Windows Server。
以下步骤使用从Windows Server 2012捕获的图像,但是对于上面列出的任何版本的Windows Server,您都可以执行相同的步骤。
设置BaseURL使用Internet信息服务(IIS)时,必须设置BaseURL 。注解
- 为BaseURL设置<http或https>:// <IIS IP地址或域名>:<IIS端口号> / <上下文路径> 。
- 根据要构建的服务器环境进行适当的设置。
- BaseURL的详细内容 ,在BaseURL请参考。
在 Internet信息服务(IIS) 上安装WebSocket协议 。注解
- 请按照以下步骤在Internet Information Services(IIS)上安装WebSocket协议。
- 打开服务器管理器。
- 在管理菜单上,单击添加职责和功能。
- 选择基于职责或基于功能的安装,然后单击下一步。
- 在“选择服务器”中选择目标服务器,然后单击“下一步”。
- 在“服务器职责”下的“ 职责”树中,展开“ Web服务器(IIS)”下的“应用程序开发”。
- 选择“ WebSocket协议”,然后单击“下一步”。
- 在功能下,单击下一步。
- 在“确认”下,单击“安装”。
- 有关Websocket协议的信息,请参阅以下文档。
要运行Internet信息服务(IIS),需要“应用程序请求路由”。请从下面的“应用程序请求路由”主页下载安装程序,并按照以下步骤进行设置。注解
网址(截至2014年8月)
4.4.2.2. 设置¶
执行设置以连接到树脂。在以下过程中,描述了假设以下环境的过程。
intra-mart Accel Platform上下文路径 形象 IIS根目录 C: \ inetpub \ wwwroot 静态文件的部署文件夹 C: \ imart Web应用程序服务器IP地址 192.168.1.1 Web应用程序服务器端口号 8080
创建一个配置文件<web.config>,用于直接在<C:/ inetpub / wwwroot>下连接Internet信息服务(IIS)和Resin。
<?xml版本=“ 1.0”编码=“ UTF-8”?> <配置> <system.web> <httpRuntime maxRequestLength =“ 102400” requestPathInvalidCharacters =” /> <customErrors 模式=“关闭” /> </system.web> <system.webServer> <安全性> <requestFiltering> <requestLimits maxAllowedContentLength =“ 104857600” /> </ requestFiltering> </安全> <httpErrors errorMode =“详细” /> <重写> <规则> <清除 /> <规则 名称=“ ReverseProxyInboundStatic” stopProcessing =“真”> <匹配 网址=“ ^ imart /(?!reverse_proxy /)(.* \ .gif |。* \ .png |。* \ .jpg |。* \ .jpeg |。* \ .css |。* \ .js |。* \ .swf |。* \ .ico |。* \ .svg |。* \ .json |。* \ .jar |。* \ .xml |。* \ .yaml |。* \ .txt |。* \ .html |。* \ .htm)$“ /> <动作 类型=“无” /> </ rule> <规则 名称=“ ReverseProxyInboundDynamic” stopProcessing =“真”> <匹配 网址=“ ^ imart /(.*)” /> <动作 类型=“重写” 网址=“ http://192.168.1.1:8080/imart/{R:1}” /> </ rule> </ rules> </ rewrite> </system.webServer> </配置>注解
web.config是Internet信息服务(IIS)的配置文件。注意
<web.config>文件无法在IM-Juggling上进行编辑。 根据服务器环境在web.config中更改以下元素。
maxRequestLength,maxAllowedContentLength属性
- 要更改上传文件的大小限制,请更改maxRequestLength和maxAllowedContentLength属性的设置。 (在上面的示例中为100 MB)
注解
详细内容 web.config的详细内容 ,请参考以下参考。 从Internet信息服务(IIS)管理器中,单击“ IIS服务器(在这里为WIN-QDQ41RVOU80)”,“应用程序请求路由缓存”和“开放功能”。 单击“服务器代理设置...”以显示“应用程序请求路由”屏幕。 选中“启用代理”,然后以秒为单位在“超时(秒)”中设置超时值。如果您没有使用集成Windows身份验证功能,请取消选中“保持活动”。单击“应用”以应用设置。注意
如果您使用集成Windows身份验证功能,请确保启用“保持活动”。注解
关闭“保持活动”可以减少错误的网关错误。但是,如果您使用集成Windows身份验证功能,请确保启用“保持活动”而不关闭它。注解
在“超时(秒)”中,设置“应用程序请求路由”断开与树脂的连接之前的超时时间。请设置一个足够大的值以完成安装Tenant环境。这里以1200秒为例。 确认显示“更改已成功保存”。 接下来,为静态文件创建一个虚拟目录。从左窗格的“默认网站”子菜单中单击“添加虚拟目录...”。在新窗口中,如下设置“ 别名 (A)”和“物理路径(P)”,然后单击“确定”。
别名 形象 物理路径 C: \ imart 检查是否已创建“ imart”目录。
4.4.2.3. 使用OAuth身份验证模块或集成Windows身份验证模块的重定向功能时的其他设置¶
* 1:RewriteLocationHeader重写响应标头的重定向目标URL(Location标头)。
intra-mart Accel Platform上下文路径 形象 IIS根目录 C: \ inetpub \ wwwroot 静态文件的部署文件夹 C: \ imart Web应用程序服务器IP地址 192.168.1.1 Web应用程序服务器端口号 8080 BaseURL http://www.example.org/imart
在Internet信息服务(IIS)管理器中,单击“应用程序请求路由缓存”>“服务器代理设置...”以显示“应用程序请求路由”屏幕。
取消选中“在响应头中反向重写主机”复选框,然后单击“应用”。
![]()
将以下设置添加到<C:/inetpub/wwwroot/web.config>。
<?xml版本=“ 1.0”编码=“ UTF-8”?> <配置> <system.webServer> <重写> ... <outboundRules> <规则 名称= “ RewriteLocationHeader” preCondition = “重定向响应” > <匹配 serverVariable = “ RESPONSE_Location” 模式= “ ^ http://192.168.1.1:8080 / imart /(。*)” /> <操作 类型= “重写” 值= “ http://www.example.org/imart/ {R:1}“ /> </规则> <preConditions> <preCondition 名称= ”重定向响应“ > <添加 输入= ” {RESPONSE_STATUS}“ pattern = ” 3 \ d \ d“ /> </ preCondition> </ preConditions> </ outboundRules> </ rewrite> </system.webServer> </配置>在Internet信息服务(IIS)管理器中,单击“默认网站”,“ URL重写”和“开放功能”。
![]()
确认已将其添加到“应用于HTTP响应标头或内容发送规则”,如下所示。
![]()
4.4.2.4. 编辑访问日志¶
对于反向代理,Resin输出的access.log中的所有源IP都将更改为IIS IP。编辑access.log的输出以避免这种情况。
打开<%RESIN_HOME%/ conf / resin.xml>文件。
<host id =”” root-directory =”。”>在指令中添加以下设置,然后重新启动Resin。
<access-log路径='log / access.log'> <rollover-period> 1D </ rollover-period> <format>%{X-Forwarded-For} i%h%l%u%t“%r” %> s%b“%{Referer} i”“%{User-Agent} i” </格式> </访问日志>注解
有关access.log的详细内容设置,请参阅“ 树脂文档 ”。