使用lvh.me代替localhost进行测试是否安全?

Jos*_*oñi 6 subdomain dns localhost

我想知道是否安全使用lvh.me而不是localhost在本地开发时使用,因为lvh.me必须解决并且IP可能随时间变化。

lvh.me由于localhost没有顶级域,因此使用的目的是能够处理子域。

ben*_*ick 8

否,因为截至目前http://lvh.me的域名已过期。

在此处输入图片说明


Ale*_*nyo 7

除非您是lvh.me的维护者,否则无法确定它不会消失或更改lvh.me的RR。

通过在文件中添加以下行,可以使用localhost.localdomain代替:localhosthosts

127.0.0.1 localhost localhost.localdomain
::1 localhost localhost.localdomain
Run Code Online (Sandbox Code Playgroud)

这比使用lvh.me更好,因为:

  • 开发时,您可能并不总是可以访问DNS解析器
  • lvm.me不会使用与您的本地主机相对应的本地IPv6地址进行应答,而只会使用IPv4地址127.0.0.1进行响应
  • 为了安全起见,某些ISP的DNS解析器会阻止与私有地址空间相对应的答案(以避免泄露内部信息)

由于您在评论中说您不想更新主机文件,因此您无须确保lvh.me将始终对您的开发人员有效。因此,回答您的问题:这是不安全的。您可以为自己注册一个域,但是正如我之前所说,某些解析器将阻止与私有地址空间相对应的答案。

  • 今天是你绝对正确的一天。 (10认同)
  • “安全”到底是什么意思? (2认同)

Eri*_*bbs 6

自 2021 年 6 月 7 日起,lvh.me 不再解析为 127.0.0.1。

DNS 的这些用途可能不再像以前那样重要。Firefox 和 Google Chrome 现在都将*.localhost名称视为localhost. 他们还对端口号做正确的事情。

要自己测试,请启动一个本地 http 服务器侦听端口 8000:

python -m http.server 8000
Run Code Online (Sandbox Code Playgroud)

然后试试这些链接

这个技巧对命令行程序没有帮助。

另外值得注意的是,类似的服务仍然可用。

请参阅https://readme.localtest.me

最后一种选择是配置您自己的通配符 CNAME 以解析为 127.0.0.1。例如:

*.my.example.com.   1800    IN  CNAME   my.example.com.
my.example.com.     1800    IN  A       127.0.0.1
Run Code Online (Sandbox Code Playgroud)

  • lvh.me 最初的托管人放弃了托管权:“我不打算续订它;这不是我个人十多年来从未使用过的东西,这对我来说是一项奇怪的自付费用。” — https://twitter.com/levicook/status/1401935705199185924 (2认同)