我有以下工作正常。
server {
listen 8080;
server_name sub.example.com;
location / {
proxy_pass http://10.0.1.88:8080/;
}
}
server {
listen 80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name example.com;
#server_name _;
location / {
try_files $uri $uri/ =404;
}
}
http://example.com =预期结果
http://example.com:8080 =意外结果=与第一个相同
第三个显示与我预期失败的第一个完全相同?
我想要发生的是 -
一个。重定向回端口80
OR
湾返回404
这已经开了几个小时了:(
感谢帮助。
由于
答案 0 :(得分:1)
请参阅this document,但要特别注意默认服务器的概念。
您问题中的两个$date = new \DateTime('2:00PM');
echo date_format($date, 'H:i');
// Output: 14:00
块都是默认服务器。一个隐含,一个明确。在端口8080上收到的任何请求(与主机名无关)将由第一个服务器块处理。同样,对于第二个块和端口80。
如果您要强制执行server
指令,则需要使用server_name
指令创建一个新的捕获所有 server
块,并放置在那里需要采取行动。
例如:
listen 8080 default_server;