Django 服务器从 Mac 到 Linux 的本地端口转发
Local port forwarding from Mac to Linux for Django server
我有一个在 Linux 上运行的 Django 服务器,可以在 localhost:8000
上访问。我的本地机器在 Mac OS X 上运行,我能够通过 ssh-ing 进入 Linux 机器然后 [=36] 在远程 Linux 机器上启动服务器=] 启动服务器的命令(在我的例子中,它以 docker-compose up
开头,因为服务器在 docker 容器内运行)。
在我的 shell 中,我可以看到 Linux 机器上的服务器是 运行。我现在想看看我是否可以在 Web 浏览器中访问该 Django 服务器并与站点交互。我该怎么做才能在浏览器上访问该站点并与远程 Linux 计算机上的 运行 服务器交互?我正在查看有关 VNC 和端口转发的指南,但让我感到困惑的一件事是,当需要进行本地端口转发时,我不断收到此错误:
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 5900
Could not request local forwarding.
当做这样的事情时:
ssh -L 5900:localhost:8000 <linux_ip>
其中 <linux_ip>
是远程 Linux 机器的 IP 地址。我很难理解如何正确地进行本地端口转发,而且我似乎没有正确使用端口转发命令。这里的最终目标是能够在我自己的本地 Web 浏览器上或通过 VNC 访问该站点,以便能够以图形方式使用远程 Linux 机器。那么我怎样才能做到其中任何一件呢?
正如道格拉斯指出的那样,我的 Mac 上的端口 5900 可能已被使用。在我愚蠢的时候,我以为还有其他事情正在发生,因为我之前尝试 5901 时发生了同样的事情。我什至没有考虑两者都被使用的可能性。转到一个实际未使用的端口,如 5903 工作得很好。
我有一个在 Linux 上运行的 Django 服务器,可以在 localhost:8000
上访问。我的本地机器在 Mac OS X 上运行,我能够通过 ssh-ing 进入 Linux 机器然后 [=36] 在远程 Linux 机器上启动服务器=] 启动服务器的命令(在我的例子中,它以 docker-compose up
开头,因为服务器在 docker 容器内运行)。
在我的 shell 中,我可以看到 Linux 机器上的服务器是 运行。我现在想看看我是否可以在 Web 浏览器中访问该 Django 服务器并与站点交互。我该怎么做才能在浏览器上访问该站点并与远程 Linux 计算机上的 运行 服务器交互?我正在查看有关 VNC 和端口转发的指南,但让我感到困惑的一件事是,当需要进行本地端口转发时,我不断收到此错误:
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 5900
Could not request local forwarding.
当做这样的事情时:
ssh -L 5900:localhost:8000 <linux_ip>
其中 <linux_ip>
是远程 Linux 机器的 IP 地址。我很难理解如何正确地进行本地端口转发,而且我似乎没有正确使用端口转发命令。这里的最终目标是能够在我自己的本地 Web 浏览器上或通过 VNC 访问该站点,以便能够以图形方式使用远程 Linux 机器。那么我怎样才能做到其中任何一件呢?
正如道格拉斯指出的那样,我的 Mac 上的端口 5900 可能已被使用。在我愚蠢的时候,我以为还有其他事情正在发生,因为我之前尝试 5901 时发生了同样的事情。我什至没有考虑两者都被使用的可能性。转到一个实际未使用的端口,如 5903 工作得很好。