Nginx 中如何配置监听端口?

推荐答案

在 Nginx 中配置监听端口是通过 listen 指令来实现的。以下是一个基本的配置示例:

-- -------------------- ---- -------
------ -
    ------ ---
    ----------- ------------

    -------- - -
        ---- --------------
        ----- -----------
    -
-

在这个示例中,Nginx 监听 80 端口,并且当访问 example.com 时,会将请求转发到 /var/www/html 目录下的 index.html 文件。

本题详细解读

1. listen 指令

listen 指令用于指定 Nginx 监听的端口号。它可以接受以下参数:

  • 端口号:例如 80443
  • IP 地址和端口号:例如 192.168.1.1:80,表示只监听特定 IP 地址的特定端口。
  • 其他选项:例如 default_server,表示该服务器块是默认的服务器块。

2. server_name 指令

server_name 指令用于指定服务器名称(域名)。当请求的 Host 头与 server_name 匹配时,Nginx 会使用该服务器块来处理请求。

3. location

location 块用于定义如何处理特定的 URL 路径。在这个示例中,location / 表示处理根路径的请求。

4. root 指令

root 指令用于指定请求的文件所在的根目录。在这个示例中,root /var/www/html 表示文件存放在 /var/www/html 目录下。

5. index 指令

index 指令用于指定默认的索引文件。在这个示例中,index index.html 表示当访问根路径时,默认返回 index.html 文件。

6. 示例扩展

你可以通过添加更多的 server 块来监听不同的端口或域名。例如:

-- -------------------- ---- -------
------ -
    ------ ---
    ----------- ------------

    -------- - -
        ---- --------------
        ----- -----------
    -
-

------ -
    ------ --- ----
    ----------- -------------------

    --------------- -------------------------------
    ------------------- ---------------------------

    -------- - -
        ---- ----------------
        ----- -----------
    -
-

在这个扩展示例中,Nginx 同时监听 80 端口和 443 端口,分别处理 example.comsecure.example.com 的请求。443 端口配置了 SSL 证书,用于 HTTPS 连接。

纠错
反馈