我想知道在本地开发时使用lvh.me
代替localhost
是否安全,因为必须解决lvh.me
并且IP可能随时间变化。
使用lvh.me
的目标是能够处理子域,因为localhost
没有顶级域。
答案 0 :(得分:8)
否,因为目前 http://lvh.me 的域名已过期。?
答案 1 :(得分:5)
除非您是lvh.me的维护者,否则不能确保它不会消失或更改lvh.me的RR。
通过在localhost.localdomain
文件中添加以下行,可以使用localhost
代替hosts
:
127.0.0.1 localhost localhost.localdomain
::1 localhost localhost.localdomain
这比使用lvh.me更好,因为:
由于您在评论中说您不想更新主机文件,因此您无意确保lvh.me将始终对您的开发人员有效。因此,回答您的问题:这是不安全的。您可以为自己注册一个域,但是正如我之前所说,某些解析器将阻止与私有地址空间相对应的答案。
答案 2 :(得分:5)
自 2021 年 6 月 7 日起,lvh.me 不再解析为 127.0.0.1。
DNS 的这些用途可能不再像以前那样重要。 Firefox 和 Google Chrome 现在都将 *.localhost
名称视为 localhost
。他们还使用端口号做正确的事情。
要自己测试,请启动一个本地 http 服务器侦听端口 8000:
python -m http.server 8000
然后尝试这些链接
这个技巧对命令行程序没有帮助。
另外值得注意的是,类似的服务仍然可用。
最后一种选择是配置您自己的通配符 CNAME 以解析为 127.0.0.1。例如:
*.my.example.com. 1800 IN CNAME my.example.com.
my.example.com. 1800 IN A 127.0.0.1
答案 3 :(得分:1)
lvh.me
或 localtest.me
之类的服务只是 DNS 服务,因此您向它们发布的唯一内容就是您使用的名称或主机。它们可以随时解析为任何 IP,但如果您仅将它们用于具有虚假数据的本地测试,您将很安全。
但是如果他们关闭服务怎么办?同样,由于您应该只将它们用于本地测试,因此您会立即获得反馈,并且可以轻松地重新使用 localhost
。
答案 4 :(得分:0)
您只需将浏览器指向myproject.apps.localhost
或www.example.net.localhost
。
答案 5 :(得分:0)
如果您不想重写代码,快速修复是打开主机文件
sudo nano /etc/hosts
粘贴(将您的子域替换为您正在调用的子域)
127.0.0.1 yoursubdomain.lvh.me
推ctrl-x
然后y
然后enter
那你就可以走了