【发布时间】:2011-08-24 04:02:11
【问题描述】:
我正在使用 Nginx 通过网络部署一个 Ruby 项目。您访问项目 Web 界面的方式是使用端口 (192.168.1.113:3000) 访问服务器的 IP 地址。这个比较麻烦。如何使用http://clock.local 之类的位置?
【问题讨论】:
我正在使用 Nginx 通过网络部署一个 Ruby 项目。您访问项目 Web 界面的方式是使用端口 (192.168.1.113:3000) 访问服务器的 IP 地址。这个比较麻烦。如何使用http://clock.local 之类的位置?
【问题讨论】:
通常操作系统有一个“hosts”文件,您可以在其中设置一个指向 IP 的名称。这就是指定“localhost”的地方(至少对我而言)。
无论如何,我认为您可以在那里为该 IP 设置一个别名,但该端口将不起作用。我想您仍然需要手动指定它。所以它会是http://alias:3000/。
【讨论】:
不熟悉 nginx,但为什么不能直接在 /etc/hosts(或 WINDIR/system32/drivers/etc/hosts)中添加一个条目来将 IP 地址解析为用户定义的别名?
【讨论】:
如果您只需要从一两台机器上解析,只需将别名放在 /etc/hosts 中即可。否则,如果您有一个本地私有 DNS 服务器,您可以在那里添加您想要的名称,以便 LAN 上的每个人都可以使用它。我还将在端口 80 上构建一个代理,这样您就不需要指定端口。 (假设那台机器上的端口 80 尚未被使用。)
编辑:我收回,如果80已经被使用没关系,你可以通过vhost代理:
server {
server_name whatever.whatever;
root /path/to/doc_root
location / {
proxy_pass http://localhost:3000;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
【讨论】: