WebSphere AppServer Liberty:如何防止将系统应用程序发布到plugin-cfg.xml

时间:2017-06-16 05:22:45

标签: websphere websphere-liberty

配置管理中心时,$ {server.config.dir} /logs/state/plugin-cfg.xml文件包含系统应用程序的uri路由规则。我不希望通过HTTP Server发布管理中心,并希望将其保留在私人访问中。

<UriGroup Name="default_host_neon1_default_node_Cluster_URIs">
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/Sample/*"/>
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/IBMJMXConnectorREST/*"/>
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ibm/api/*"/>
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ibm/adminCenter/explore-1.0/*"/>
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ibm/adminCenter/serverConfig-1.0/*"/>
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/adminCenter/*"/>
</UriGroup>

我找不到任何设置来消除plugin-cfg.xml中的url(例如server.xml中的&lt; pluginConfiguration&gt;)。如何从plugin-cfg.xml文件中删除这些路由规则?我可以手动编辑文件吗?

1 个答案:

答案 0 :(得分:0)

有一种非手动方式可以做到这一点。您需要将管理中心绑定到其他端口。无论如何,这是一件好事,因为它只是在应用程序和管理流量之间增加了更多的分离。为此,您将定义两个http端点:

<httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" />
<httpEndpoint id="appHttpEndpoint" host="*" httpPort="9081" />

然后为应用程序定义虚拟主机(如果愿意,还可以将虚拟主机绑定到特定端点):

<virtualHost id="app_host">
   <hostAlias>your_host_name:9081</hostAlias>
</virtualHost>

您还希望将默认主机仅绑定到一个端口。

<virtualHost id="default_host">
   <hostAlias>your_host_name:9080</hostAlias>
</virtualHost>

然后将webApplication绑定到应用程序主机:

                   

最后一件事,您需要配置插件以使用appHttpEndpoint而不是defaultHttpEndpoint:

<pluginConfiguration httpEndpointRef="appHttpEndpoint"/>

pluginConfiguration上的httpEndpointRef的默认值是defaultHttpEndpoint,因此如果您愿意,可以使用defaultHttpEndpoint进行应用程序配置,并将管理流量也移动到其他端点。

有用的知识中心参考资料是: