提问人:Josu Goñi 提问时间:7/30/2018 更新时间:3/7/2023 访问量:25041
使用 lvh.me 而不是 localhost 进行测试是否安全?
It is safe to use lvh.me instead of localhost for testing?
问:
我想知道使用而不是在本地开发时是否安全,因为必须解决并且 IP 可能会随着时间的推移而改变。lvh.me
localhost
lvh.me
使用的目标是能够处理子域,因为没有顶级域。lvh.me
localhost
答:
除非您是 lvh.me 的维护者,否则您无法确定它不会消失或更改其 RR lvh.me。
您可以通过在文件中添加以下行来代替 ,而不是 :localhost.localdomain
localhost
hosts
127.0.0.1 localhost localhost.localdomain
::1 localhost localhost.localdomain
这比使用 lvh.me 更好,因为:
- 在开发时,您可能并不总是可以访问 DNS 解析器
- lvm.me 不使用与本地主机对应的本地 IPv6 地址进行应答,而只能使用 IPv4 地址 127.0.0.1 进行应答
- 出于安全目的,一些ISP DNS解析器会阻止与私有地址空间相对应的答案(以避免泄露内部信息)
由于您在评论中说您不想更新主机文件,因此您无法确定 lvh.me 始终适用于您的开发人员。因此,回答您的问题:这是不安全的。您可以为自己注册一个域,但正如我之前所说,一些解析器会阻止与私有地址空间相对应的答案。
评论
您只需将浏览器指向 或 即可。myproject.apps.localhost
www.example.net.localhost
像 DNS 服务或只是 DNS 服务,因此您发布给它们的唯一内容就是您正在使用的名称或主机。它们可以随时解析到任何 IP,但前提是您仅将它们用于使用虚假数据的本地测试,您将是安全的。lvh.me
localtest.me
但是,如果他们关闭了服务怎么办?同样,由于您应该仅将它们用于本地测试,因此您将立即获得反馈,并且可以轻松返回使用。localhost
不,因为截至目前,http://lvh.me 有一个过期的域名。 😬
评论
lvh.me 在 2021 年 6 月 7 日未解析为 127.0.0.1。根据您无法控制的 DNS 名称,会带来这种风险。尽管域名在当天结束时已恢复,但此答案提供了一些替代方法,以依赖其他人的DNS配置。
Firefox 和 Google Chrome 现在都像 .他们还对端口号做了正确的事情。*.localhost
localhost
要自行测试,请启动侦听端口 8000 的本地 http 服务器:
python -m http.server 8000
然后尝试这些链接
此技巧对命令行程序没有帮助。例如,此命令将无法解析主机:
curl http://example.localhost:8000
Curl 本身提供了许多其他技巧,如果您需要在命令行上自定义子域,这些技巧可能适合您。例如,这个技巧有效:
curl --resolve example.localhost:127.0.0.1 \
http://example.localhost:8000
还值得注意的是,类似的服务仍然可用。
请参见 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
评论
localhost
如果你不想重写你的代码,快速修复是打开hosts文件
sudo nano /etc/hosts
粘贴(将 yoursubdomain 替换为您要调用的子域)
127.0.0.1 yoursubdomain.lvh.me
推然后然后ctrl-x
y
enter
那你就可以开始了
这取决于你在做什么。如果是本地开发,那么大多数时候是的,如果你想检查,你总是可以解决它:
对于 linux 或 osx,您可以在终端中运行以下命令:
dig X.nip.io
它应始终返回 127.0.0.1。因此,虽然这不是“最安全”的方法(因为您不管理 DNS 本身),但我仍然经常在必要时使用它来解析 TLD。以下是截至 2022/2023 年仍然存在的一些有效的信誉良好的网站:
评论
*** Can't find x.nip.io: No answer
评论
lvh.me
刚买,不再工作了lvh.me