Curl Nginx服务器块的测试

Curl Nginx服务器块的测试,curl,nginx,Curl,Nginx,我已经在笔记本电脑上安装了nginx1.12.0 我有一个简单的Nginx服务器块,如下所示: server { listen 80; server_name myserver.com; location /hello { return 200 'OK'; } } 我想测试这个服务器块的工作情况。 我能想到的一种方法是: 在/etc/hosts中插入以下内容。 127.0.0.1 myserver.com 执行以下命令

我已经在笔记本电脑上安装了nginx1.12.0

我有一个简单的Nginx服务器块,如下所示:

server {
    listen         80;
    server_name    myserver.com;

    location /hello {
       return 200 'OK';
    }
}
我想测试这个服务器块的工作情况。 我能想到的一种方法是:

  • 在/etc/hosts中插入以下内容。
    • 127.0.0.1 myserver.com
  • 执行以下命令。这将给出“OK”的响应
    • curl“myserver.com/hello”

是否有其他不编辑/etc/hosts文件的方法?我的意思是,是否可以只使用curl命令(可能使用一些头文件,如x-forwarded-server或其他内容)?

用于标识虚拟主机的
server\u name
指令不用于设置绑定。由于
listen 80
指令使NGINX服务于所有IP地址上的请求,包括127.0.0.1,因此您可以使用:

curl http://127.0.0.1/hello

如果没有
/etc/hosts
更改,后者将假定默认情况下,
127.0.0.1 localhost
已经存在。

您应该向请求头添加“Host”以确定请求应该路由到哪个服务器。例如,您可以执行以下操作:

curl-H'Host:myserver.com'localhost:80/hello

我对server\u name指令进行了注释,并尝试使用您提到的curl命令。现在它给了我找不到的回应。我错过什么了吗?
curl http://localhost/hello