WSO2 分布式设置 - 无法通过网关访问 API
WSO2 Distributed setup - no access to API via Gateway
我看了很多关于这个话题的资料,但我没有答案。
我有 3 台具有以下组件的服务器
- server1 - WSO2 IS + OpenLDAP
- server2 - WSO2 网关
- server3 - 出版商 + 商店
所有这些服务器都与 LDAP 一起工作,我可以毫无问题地使用我的 Ldap 登录名登录 IS、网关、发布者和商店。
在 Publisher 配置文件中我写了 Gateway server2 但是当我发布新测试时 API 我可以访问这个 API (server3:8243/ddd/v1/aaa
),但是通过网关我无法访问 https://server2:8243/ddd/v1/aaa
我得到了一个错误 404。
我需要如何配置我的 WSO2 发布者或网关。
P.S。目前我在密钥库中没有生成 ssl 密钥。你能告诉我如何解决这个问题来测试我的测试 API?
当您从发布者发布 API 时,它会将 API 的 Synapse 工件推送到网关节点。但在您的情况下,由于您没有更改 Publisher/Store 节点中的任何配置,它指向服务器本身。
你可以编辑服务器3,点服务器2作为你的网关节点。在 APIM/repository/conf 位置编辑 api-manager.xml 文件。
<APIGateway>
<Environments>
<Environment type="hybrid" api-console="true">
<Name>Production and Sandbox</Name>
<Description>This is a hybrid gateway that handles both production and sandbox token traffic.</Description>
<ServerURL>https://[API-Gateway-Host-or-IP]:9443/services/</ServerURL>
<Username>${admin.username}</Username>
<Password>${admin.password}</Password>
<GatewayEndpoint>http://[API-Gateway-Host]:8280,https://[API-Gateway-Host]:8243</GatewayEndpoint>
</Environment>
</Environments>
</APIGateway>
我看了很多关于这个话题的资料,但我没有答案。
我有 3 台具有以下组件的服务器
- server1 - WSO2 IS + OpenLDAP
- server2 - WSO2 网关
- server3 - 出版商 + 商店
所有这些服务器都与 LDAP 一起工作,我可以毫无问题地使用我的 Ldap 登录名登录 IS、网关、发布者和商店。
在 Publisher 配置文件中我写了 Gateway server2 但是当我发布新测试时 API 我可以访问这个 API (server3:8243/ddd/v1/aaa
),但是通过网关我无法访问 https://server2:8243/ddd/v1/aaa
我得到了一个错误 404。
我需要如何配置我的 WSO2 发布者或网关。
P.S。目前我在密钥库中没有生成 ssl 密钥。你能告诉我如何解决这个问题来测试我的测试 API?
当您从发布者发布 API 时,它会将 API 的 Synapse 工件推送到网关节点。但在您的情况下,由于您没有更改 Publisher/Store 节点中的任何配置,它指向服务器本身。
你可以编辑服务器3,点服务器2作为你的网关节点。在 APIM/repository/conf 位置编辑 api-manager.xml 文件。
<APIGateway>
<Environments>
<Environment type="hybrid" api-console="true">
<Name>Production and Sandbox</Name>
<Description>This is a hybrid gateway that handles both production and sandbox token traffic.</Description>
<ServerURL>https://[API-Gateway-Host-or-IP]:9443/services/</ServerURL>
<Username>${admin.username}</Username>
<Password>${admin.password}</Password>
<GatewayEndpoint>http://[API-Gateway-Host]:8280,https://[API-Gateway-Host]:8243</GatewayEndpoint>
</Environment>
</Environments>
</APIGateway>