intra-mart Accel Platform安装指南 第33版2020-09-01

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协议。
  1. 打开服务器管理器。
  2. 在管理菜单上,单击添加职责和功能。
  3. 选择基于职责或基于功能的安装,然后单击下一步。
  4. 在“选择服务器”中选择目标服务器,然后单击“下一步”。
  5. 在“服务器职责”下的“ 职责”树中,展开“ Web服务器(IIS)”下的“应用程序开发”。
  6. 选择“ WebSocket协议”,然后单击“下一步”。
  7. 在功能下,单击下一步。
  8. 在“确认”下,单击“安装”。
  • 有关Websocket协议的信息,请参阅以下文档。
  • 要运行Internet信息服务(IIS),需要“应用程序请求路由”。
    请从下面的“应用程序请求路由”主页下载安装程序,并按照以下步骤进行设置。

注解

网址(截至2014年8月)

4.4.2.1.1. 应用程序请求路由设置

  1. 执行下载的<ARRv3_0.exe>。

  2. 点击“安装”。

    ../../../_images/iis_arr_30beta_1.png
  3. 确认前提条件和许可条款后,单击“同意”。

    ../../../_images/iis_arr_30beta_2.png
  4. 点击“完成”。

    ../../../_images/iis_arr_30beta_3.png
  5. 点击“完成”。

    ../../../_images/iis_arr_30beta_4.png

    这样就完成了应用程序请求路由设置。

4.4.2.2. 设置

  • 执行设置以连接到树脂。
    在以下过程中,描述了假设以下环境的过程。
    ../../../_images/iis_arr_inboundRules.png
    intra-mart Accel Platform上下文路径 形象
    IIS根目录 C: \ inetpub \ wwwroot
    静态文件的部署文件夹 C: \ imart
    Web应用程序服务器IP地址 192.168.1.1
    Web应用程序服务器端口号 8080
    1. 创建一个配置文件<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上进行编辑。
    2. 根据服务器环境在web.config中更改以下元素。
      • maxRequestLength,maxAllowedContentLength属性

        • 要更改上传文件的大小限制,请更改maxRequestLength和maxAllowedContentLength属性的设置。 (在上面的示例中为100 MB)

      注解

      详细内容 web.config的详细内容 ,请参考以下参考。
    3. 从Internet信息服务(IIS)管理器中,单击“ IIS服务器(在这里为WIN-QDQ41RVOU80)”,“应用程序请求路由缓存”和“开放功能”。
      ../../../_images/iis_arr_config_1.png
    4. 单击“服务器代理设置...”以显示“应用程序请求路由”屏幕。
      ../../../_images/iis_arr_config_2.png
    5. 选中“启用代理”,然后以秒为单位在“超时(秒)”中设置超时值。
      如果您没有使用集成Windows身份验证功能,请取消选中“保持活动”。
      单击“应用”以应用设置。
      ../../../_images/iis_arr_config_3.png

      注意

      如果您使用集成Windows身份验证功能,请确保启用“保持活动”。

      注解

      关闭“保持活动”可以减少错误的网关错误。
      但是,如果您使用集成Windows身份验证功能,请确保启用“保持活动”而不关闭它。

      注解

      在“超时(秒)”中,设置“应用程序请求路由”断开与树脂的连接之前的超时时间。
      请设置一个足够大的值以完成安装Tenant环境。
      这里以1200秒为例。
    6. 确认显示“更改已成功保存”。
      ../../../_images/iis_arr_config_4.png
    7. 接下来,为静态文件创建一个虚拟目录。
      从左窗格的“默认网站”子菜单中单击“添加虚拟目录...”。
      ../../../_images/iis_arr_virtualsite_1.png
    8. 在新窗口中,如下设置“ 别名 (A)”和“物理路径(P)”,然后单击“确定”。

      别名 形象
      物理路径 C: \ imart
      ../../../_images/iis_arr_virtualsite_2.png
    9. 检查是否已创建“ imart”目录。

      ../../../_images/iis_arr_virtualsite_3.png

4.4.2.3. 使用OAuth身份验证模块或集成Windows身份验证模块的重定向功能时的其他设置

为了在IIS环境下操作OAuth身份验证模块或集成Windows身份验证模块的重定向功能,需要以下附加设置。
该过程假定以下环境。
../../../_images/iis_arr_outboundRules.png

* 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
  1. 在Internet信息服务(IIS)管理器中,单击“应用程序请求路由缓存”>“服务器代理设置...”以显示“应用程序请求路由”屏幕。

  2. 取消选中“在响应头中反向重写主机”复选框,然后单击“应用”。

    ../../../_images/iis_arr_config_5.png
  3. 将以下设置添加到<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> </配置>
    
  4. 在Internet信息服务(IIS)管理器中,单击“默认网站”,“ URL重写”和“开放功能”。

    ../../../_images/iis_arr_virtualsite_4.png
  5. 确认已将其添加到“应用于HTTP响应标头或内容发送规则”,如下所示。

    ../../../_images/iis_arr_virtualsite_5.png

4.4.2.4. 编辑访问日志

对于反向代理,Resin输出的access.log中的所有源IP都将更改为IIS IP。
编辑access.log的输出以避免这种情况。
  1. 打开<%RESIN_HOME%/ conf / resin.xml>文件。

  2. <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的详细内容设置,请参阅“ 树脂文档 ”。