本地主机上的子域名

本地主机上的子域名

可以在 /etc/hosts 文件中使用通配符吗?

例如,我正在开发具有用户定义子域的应用程序,如“user1.foo.bar”、“user2.foo.bar”。

我正在寻找这样的东西:

127.0.0.1 foo.bar
127.0.0.1 *.foo.bar

我怎样才能使它工作?

答案1

不可以。您需要一个功能齐全的 DNS 服务器才能执行此操作。

答案2

不,正如已经说的,你不能,但是......

如果主机名遵循您所说的内容,您可以使用 Bash shell 执行此操作以节省一些输入:

for i in user{1..10}; do 
    sudo bash -c "echo 127.0.0.1 ${i}.foo.bar >> /etc/hosts"
done

或者,假设将它们全部放在一个文本文件中,每行一个主机:

while read host; do
    sudo bash -c "echo 127.0.0.1 $host >> /etc/hosts"
done < fileName

相关内容