【问题标题】:How do I get Open Search Server to use SSL & HTTPS?如何让 Open Search Server 使用 SSL 和 HTTPS?
【发布时间】:2017-03-06 18:19:20
【问题描述】:

我有一个基本的渲染器设置。但是,我发现很难找到任何关于此的文档。

如何让 Open Search Server 使用 HTTPS 而不是 HTTP 进行所有连接和工作?

这让我很困惑,我可以看到它在后端使用 apache 和 tomcat,但我没有看到任何我期望的 conf 文件。

我已经阅读了此处列出的所有文档:http://www.opensearchserver.com/documentation/README.md

因此,我们将不胜感激。

谢谢

OSS新手!

【问题讨论】:

  • 您打算在装有 Apache 的 linux 服务器上运行还是在 Windows 服务器上运行?
  • Windows Server 是我们当前运行它的平台。
  • 如果我的回答能满足您的需求,请告诉我。

标签: apache tomcat open-search-server


【解决方案1】:

在 Windows 服务器上像 OSS 这样的 Java Web 应用程序的基本设置是:

  1. 设置 java 应用程序容器 (Tomcat) 以作为 Windows 服务运行。您可以使用NSSM (Non-sucking service manager) 或下载Tomcat windows service installer。这将允许您使用 8080、9090 或任何配置的端口在本地访问 Java Web 应用程序。
  2. 如果你想从服务器外部访问 OSS(即:从标准的 80 端口 Web 请求),你必须设置反向代理,例如,IIS 可以将任何 80 端口的请求转发到运行在 9090 端口上的 OSS 应用程序。

对于第 2 步,您需要执行以下步骤:

  1. 安装 IIS 重写扩展 (http://www.iis.net/downloads/microsoft/url-rewrite)
  2. 安装应用程序请求路由 (http://www.iis.net/downloads/microsoft/application-request-routing)
  3. 点击IIS Server节点,点击IIS下的Application Request Routing Cache图标
  4. 选择服务器代理设置,使用默认设置启用代理
  5. 创建新的 Web 应用程序并指向空文件夹
  6. 在文件夹中创建一个 web.config 文件
  7. 将以下内容添加到 web.config 中(确保端口号与 Tomcat 服务配置相同)。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<system.webServer>
		<rewrite>
			<rules>
				<rule name="ReverseProxyInboundRule1" stopProcessing="true">
					<match url="(.*)" />
					<action type="Rewrite" url="http://localhost:8080/{R:1}" />
				</rule>
			</rules>
		</rewrite>
	</system.webServer>
</configuration>

一旦您有一个将所有请求转发到 OSS 的工作 IIS 应用程序,您就可以安装 SSL 证书并使用您安装的证书为 https 添加到 IIS 应用程序的绑定。

【讨论】:

  • 嗨@DotNetNuclear,感谢您提供的信息。这在大多数情况下都有效,除了带有 URL 重写的反向代理。这不适用于页面不再可用的效果。我不确定这是否是因为渲染器没有正常工作。我今天将有更多的时间来处理它。所以可能会在今天结束时通知您。
  • 好的,不要再进一步使用反向代理了。我在这里做错了什么?因为它看起来并不明显。当我查看日志时,看起来 IIS 正在吞下一个“?”根据日志文件 2017-03-15 10:13:25 172.20.0.101 GET /renderer use=Documentation&login=view&key=cef777f6dca67891b076ebabe2b305cf&name=default-file 80 - 172.20.0.101 Mozilla/5.0 中的条目将请求转发到服务器时+(Windows+NT+6.3;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko - 404 0 2 0
  • RR_SH,我主要使用OSS API来获取搜索结果,所以没有遇到过这个问题。根据您的描述,您可以尝试通过添加 appendQueryString="true" 来更改 web.config 中的操作元素。所以它应该看起来像这样:localhost:8080{R:1}" appendQueryString="true" />
  • 看起来我花了一段时间才锻炼出来。你的回答加上这篇精彩的帖子帮助了我:ruslany.net/2009/04/10-url-rewriting-tips-and-tricks(第 7 名)这正是你所说的。但一路走来,我一定很困惑。现在确保渲染页面是人们看到的第一页。
猜你喜欢
  • 1970-01-01
  • 2011-04-11
  • 1970-01-01
  • 2014-10-27
  • 2014-07-28
  • 2010-12-30
  • 1970-01-01
  • 2012-10-28
相关资源
最近更新 更多