![Bugzilla:如何配置一个在内部和外部都能工作的“urlbase”?](https://linux22.com/image/1305287/Bugzilla%EF%BC%9A%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E4%B8%80%E4%B8%AA%E5%9C%A8%E5%86%85%E9%83%A8%E5%92%8C%E5%A4%96%E9%83%A8%E9%83%BD%E8%83%BD%E5%B7%A5%E4%BD%9C%E7%9A%84%E2%80%9Curlbase%E2%80%9D%EF%BC%9F.png)
问题:
我在 Linux 上运行着 Bugzillla 3.6,并使用 Windows 2008 服务器作为我们的内部 DNS。
我需要设置 Bugzilla 的 urlbase”,以便相同的配置适用于内部客户端和外部客户端
例子:
外部访问:
http://bugs.mycompany.com/bugzilla(xx.yy.zzz.nn) <= 一切正常
- 内部访问 (Windows DNS)
http://bugs/bugzilla(192.168.1.200)<= 到达初始页面,然后尝试访问远程地址“bugs.mycompany.com” - 因为主机实际上在我们的防火墙内
- 解决方法:
在客户端电脑上破解 c:\Windows\system32\drivers\etc\hosts:
192.168.1.200 bugs.mycompany.com
此解决方法存在两个问题:
我必须为大楼里的每个客户编辑主持人
笔记本电脑可能前一分钟是外部的,后一分钟就变成内部客户端的了
还有更好的想法吗????
Bugzilla 有没有一个“通用”的 URL 库?或者有要求FQDN?
提前非常感谢您...
答案1
修复您的防火墙和 NAT,以便当内部客户端尝试连接到 NAT 的公共 IP 地址上的该端口时允许发夹式连接。
答案2
另一个选择是安装两次 Bugzilla,两次都配置为使用相同的数据库,但使用不同的 urlbase 设置。
答案3
另一个解决方案是在您的公司设置一个内部 DNS 服务器(不可从外部访问)(可能只需在已有的服务器上启用 DNS 服务),让所有内部客户端在内部网络上时都使用该 DNS 服务器,并让该 DNS 服务器具有将 bugs.mycompany.com 映射到 192.168.1.200 的“A”记录。
这样,您就不必破解所有客户端上的 /etc/hosts 文件(这也是创建 DNS 的原因)。
这比我的其他建议有一个优势,因为来自内部客户端的 Bugzilla 流量不必两次穿越您的网络和 NAT 网关。