为本地主机设置别名主机名

55
假设本地 Python 脚本正在运行一个 Web 服务器。
有没有办法设置别名,使得 http://localwebapp/ 等同于 http://localhost:1234/
编辑:或者至少 http://localwebapp:1234/ 等同于 http://localhost:1234/
4个回答

74
当浏览器看到 http://localwebapp/ 时,它首先尝试确定 localwebapp 的 IP 地址。如果成功,浏览器将使用特定的端口(HTTP 的默认端口是 80,除非 URL 中指定了其他端口)与该主机建立 TCP 连接。 将 localwebapp 解析为 IP 地址时不考虑端口信息,因此只能通过 HTTP 重定向的方式将 http://localwebapp/ 指向 http://localhost:1234/
要使 http://localwebapp:1234/ 等同于 http://localhost:1234/,请编辑操作系统的 hosts 文件并添加这一行。
127.0.0.1 localwebapp

hosts 文件的位置取决于操作系统:

  • 类 UNIX 操作系统通常位于 /etc/hosts
  • Windows 操作系统通常位于:C:\Windows\System32\drivers\etc\hosts

13
对于Windows系统而言,hosts文件通常位于路径:C:\Windows\System32\drivers\etc\hosts。 - kakoma
2
如何在纯本地主机上(没有运行Web服务器)进行HTTP重定向? - Bernardo Dal Corno

19

第二个选项(只是使用主机名而不包括端口信息的别名)可以通过将localwebapp添加到您的hosts文件中实现(在*NIX中为/etc/hosts,在Windows中为c:\windows\system32\drivers\etc\hosts)。

添加

127.0.0.1 localwebapp

假设你的本地Python脚本不进行虚拟托管且为所有请求的域名提供相同内容,则应该行得通。


9
您可以在/etc/hosts文件中将localwebapp作为localhost的别名。然后,您可以运行一个Web服务器(如Apache和其它),以检测该主机名。
<VirtualHost *:80>
    ServerName localwebapp

    # redirect elsewhere
    Redirect localhost:1234

</VirtualHost>

2
如果我想从myfolder.com重定向到localhost/myfolder(仅在我的私人PC上),该怎么办?我尝试以相同的方式设置VirtualHost,但对我没有用。有人可以帮忙吗? - tomas.teicher

1

打开此路径:C:\Windows\System32\drivers\etc。以管理员身份打开hosts文件并更改本地主机配置。例如,在我的情况下,我想显示app.com而不是localhost。只需在127.0.0.1 localhost和::1前面添加app.com即可。 Hosts文件更改: 127.0.0.1 localhost app.com ::1 localhost app.com


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接