我在Mac电脑上。我有一个安装了Postfix的流浪虚拟机,当Vagrant的DNS主机解析器打开时,它不会发送电子邮件。 Nat DNS Host解析器修复了WordPress在没有主机解析器时吐出的各种错误,因此我需要它。如何修复Postfix而不会导致WordPress开始表现得好笑?
Vagrantfile中导致问题的代码:
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
答案 0 :(得分:3)
我会将此添加为评论,但我没有足够的声誉点来这样做。但是,我仍然希望为未来的任何用户做出贡献,因为我花了很多时间,然后我想要/需要这个。
在Ubuntu 14.04流浪盒上,我遇到了与OP相同的问题。通过测试,我发现更新/etc/resolv.conf
允许我使用postfix命中我们的交换服务器,而仍然对我们的本地开发站点有本地NAT DNS解析。如下所示:
sudo echo "nameserver 8.8.8.8" >> /etc/resolv.conf; sudo service postfix restart;
奇怪的是,我的配置/操作系统更新/var/spool/postfix/etc/resolv.conf
无效。
我还将此添加到Vagrant文件以供将来使用:
config.vm.provision "shell", run: "always", inline: <<-SHELL
sudo echo nameserver 8.8.8.8 >> /etc/resolv.conf
sudo service postfix restart
SHELL
答案 1 :(得分:0)
编辑Postfix DNS设置以使用受Vagrant DNS设置影响的DNS设置。
要全局更改设置,请编辑/etc/resolv.conf并输入自定义DNS IP(8.8.8.8是Google的DNS服务器)。这可能会使Vagrant共享DNS设置毫无意义。
要利用这两种设置(DNS解析和有效的Postfix的DNS设置),请执行以下操作:
cd /var/spool/postfix/etc
sed -i 's/nameserver 10.0.2.3/nameserver 8.8.8.8/g' resolv.conf
这会将Postfix使用的DNS服务器更改为8.8.8.8。