我使用sudo apt-get install nginx
安装了nginx。
现在这允许我转到my_ip:port
,它允许我访问该网站。
然而,我也可以my_url:port
,它也会引导我访问网站。
当我还没有告诉my_url时,nginx如何知道my_url?
之前我在运行Apache,可以解释一下吗?
答案 0 :(得分:0)
Nginx不需要它(至少,还没有)。您的网络浏览器在DNS中查找my_url
,然后使用my_ip
(来自DNS):port
(您在浏览器中输入)连接到Nginx。
您的Nginx可能只配置了一个站点,这意味着与它的任何连接 - 无论是通过IP还是通过域名 - 都会导致Nginx为该站点提供服务。您可以通过进入Nginx配置文件并设置(或更改)server_name
参数的值来更改此设置,例如:
server { # You already have a server block somewhere in the config file
listen 80; # Or 443, if you've enabled SSL
server_name example.com www.example.com; # Add (or change) this line to the list of addresses you want to answer to
答案 1 :(得分:0)
Nginx能够通过fqdn my_url:port
加载,即使您没有在nginx配置中添加my_url
,因为指定了config default_server
(通常默认情况下)。
default_server
参数指定如果请求的server_name与任何可用服务器块都不匹配,哪个块应该为请求提供服务:
例如
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}