我有一个与各种服务连接的 Web 应用程序,开发它的唯一方法是使用完全相同的域进行开发和生产。当我需要开发它时,我通过覆盖 /etc/hosts 中的域来指向 localhost。然而,这是一个痛苦的开发工作流程,每次我需要切换和清除 Chromium 缓存时,我都必须编辑 /etc/hosts。有什么方法可以让它更容易吗?是否可以直接在 Chromium 中覆盖 DNS,例如,我可以为开发设置单独的浏览器配置文件?
答案1
不要更改主机名,而是使用 DNAT 来更改 IP 地址的位置:
iptables -t nat -A OUTPUT -d $prod_ip -j DNAT --到目标$test_ip […] iptables -t nat -F 输出
nft 添加链 ip nat 输入'{类型 nat hook 输入优先级 -150;策略接受;}' nft 添加链 ip nat 输出'{类型 nat hook 输出优先级 -150;策略接受;}' nft 添加规则 ip nat 输出 ip daddr $prod_ip dnat 到 $test_ip […] nft 刷新链 ip nat 输出