我在远程服务器上使用 PostgreSQL 数据库,防火墙非常严格,只允许来自我们的网络服务器的连接。这使得在我自己的工作站上开发东西变得非常困难,因为我无法直接连接到该服务器来测试我的代码。
我想做的是在我们的网络服务器上设置某种代理,它只是将所有查询发送到防火墙服务器。然后我可以从我的工作站使用我们的服务器来测试我的代码。任何想法如何做到这一点或解决我的问题的其他方法?
我在远程服务器上使用 PostgreSQL 数据库,防火墙非常严格,只允许来自我们的网络服务器的连接。这使得在我自己的工作站上开发东西变得非常困难,因为我无法直接连接到该服务器来测试我的代码。
我想做的是在我们的网络服务器上设置某种代理,它只是将所有查询发送到防火墙服务器。然后我可以从我的工作站使用我们的服务器来测试我的代码。任何想法如何做到这一点或解决我的问题的其他方法?
使用 ssh 并创建一个本地隧道,类似这样(仅当您在 Web 服务器上运行 ssh 守护程序时才有效)
ssh user@webserver.com -CNL localhost:5432:192.168.1.128:5432
以上将监听 localhost 上的 5432(postgres 端口),并通过 Web 服务器将所有流量转发到远程机器。
正如 Ricky Han 在下面提到的,您需要将地址192.168.1.128更改为您的 PostgreSQL 服务器的地址。
显然,您还需要更改 webserver.com 的名称!:-)