我正在尝试设置 Apache 以反向代理 Tensorboard 服务器,以便我可以在我的网站上通过 Web 查看训练进度。example.com
我决定尝试两种方法来实现这一点:1) 创建一个子域log.example.com
并让 Apache 将对此域的请求传递到服务器或 2) 只需在example.com/tensorboard
访问时让 Apache 反向代理服务器。在测试了这两种方法后,只有第一种方法似乎可以正常工作。
Tensorboard 服务器在我的服务器机器的 6006 端口上运行。以下是上述方法的 Apache 配置文件:
1)使用子域名log.example.com
<VirtualHost *:80>
ServerName log.example.com
ProxyPreserveHost On
<Directory /path/to/needed/files>
Require all granted
</Directory>
ProxyPass / http://127.0.0.1:6006/
ProxyPassReverse / http://127.0.0.1:6006/
</VirtualHost>
一切按预期进行。Tensorboard 服务器正确加载并显示图表。
2)使用example.com/tensorboard
<VirtualHost *:80>
ServerName example.com
ProxyPreserveHost On
<Directory /path/to/needed/files>
Require all granted
</Directory>
<Location /tensorboard>
ProxyPass http://127.0.0.1:6006/
ProxyPassReverse http://127.0.0.1:6006/
</Location>
</VirtualHost>
这并没有按预期工作。模板页面确实从 Tensorboard 加载,但它再也没有进一步进展;它总是卡在尝试加载任何预期的图表上。
因为第一种方法有效,所以我假设问题不在于我的 Tensorboard 服务器。我不明白为什么这两种方法不能以完全相同的方式工作;有人知道我的第二种方法出了什么问题吗?