配置 RavenDB 流量以通过内部网络运行

问题描述

我在通过错误的网络路由流量时遇到了一些配置问题。

我有

  • RavendB(4.2 版)安装在一台服务器上
  • 安装在另一台服务器上的网站(安装在 IIS 上)

两台服务器在同一个网络上。

我们面临的问题是 db 和 web 之间的所有流量都通过 Internet/外部网络运行,而不是通过内部网络。这很明显是一个问题,希望流量通过内部网络运行。

不幸的是,我们还没有想出如何正确配置它。

RavendB settings.json:

{
  "DataDir": "Ravendata","License.Eula.Accepted": true,"Security.Certificate.LetsEncrypt.Email": "some@email.com","Setup.Mode": "LetsEncrypt","Security.Certificate.Path": "certificate.pfx","ServerUrl": "https://0.0.0.0:8080","ServerUrl.Tcp": "tcp://0.0.0.0:38888","ExternalIp": "109.0.0.0","PublicServerUrl": "https://public_domain:8080","PublicServerUrl.Tcp": "tcp://public_domain:38888"
}

(上面的一些数据被遮住了。上面的“ExternalIp”-设置是隐藏的,但设置为与指向PublicServerUrl-domain的外部IP相同)

网站数据库设置:

<add key="Raven.Url" value="https://public_domain:8080" />
<add key="Raven.File.Url" value="https://public_domain:8080" />

我尝试过的:

  • 将 settings.json 中的 ServerUrl 值更改为的内部 IP RavendB。
  • 数据库应用设置 (Raven.Url) 更改为内部 IP。 这导致异常:
Raven.Client.Exceptions.Security.CertificateNameMismatchException: You are trying to contact host *internal ip inserted here* but the hostname must match one of the CN or SAN properties of the server certificate

如何强制流量通过内部 IP/网络而不是外部 IP/互联网?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)