Home  >  Article  >  Operation and Maintenance  >  Nginx configuration usage example analysis

Nginx configuration usage example analysis

王林
王林forward
2023-05-22 12:34:061036browse

Configuration steps:

1. How to configure nginx: First open the "/etc/nginx/conf.d/" folder;

2. Then create the configuration file; then modify the configuration items in the "/etc/nginx/nginx.conf" file;

3. Finally, restart nginx

Nginx is a lightweight Web server/reverse proxy server and email (IMAP/POP3) proxy server
Nginx (engine x) is also a high-performance HTTP and reverse proxy service, and also an IMAP/POP3/SMTP service. Nginx was developed by Igor Sesoev for the second most visited Rambler.ru site in Russia (Russian: Рамблер)

Front-end and back-end nginx configuration

1. Open /etc/nginx/conf.d/ folder, create the configuration file xxx.conf, the content is as follows:

    server {
    listen 80;
    server_name **.106.2**.175;
    location / {
            root   /public/app/dist;
            index  index.php index.html index.htm;
    }

    location /sell {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   Host      $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass         http://127.0.0.1:8080;
        proxy_redirect off;

    }}

2. There is a line in the /etc/nginx/nginx.conf file that imports the just configured In the total nginx configuration

...

    include /etc/nginx/conf.d/*.conf;...

3. Restart nginx after the configuration is completed

nginx -t                         # 查看nginx状态
nginx -s reload            # 重新载入配置文件
nginx -s reopen           # 重启 Nginx
nginx -s stop               # 停止 Nginx

4. Configure https

server {
        listen 443;
        server_name xx.name.com;
        ssl on;
        index index.html index.htm;
        ssl_certificate   cert/215079423330181.cert;
        ssl_certificate_key  cert/215079423330181.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;

        location / {
           root   /public/app/dist;
           index  index.php index.html index.htm;
        }

        location /sell {
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   Host      $http_host;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass         http://127.0.0.1:8080;
            proxy_redirect off;
        }
   }

5.nginx.conf default file

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;

worker_processes auto;

error_log /var/log/nginx/error.log;

pid /run/nginx.pid;


# Load dynamic modules. See /usr/share/nginx/README.dynamic.

include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    gzip on;
    gzip_static on;
    gzip_min_length 1024;
    gzip_buffers 4 16k;
    gzip_comp_level 2;
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript   application/x-httpd-php application/vnd.ms-fontobject font/ttf font/opentype font/x-woff image/svg+xml;
    gzip_vary off;
    gzip_disable "MSIE [1-6]\.";


    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;


    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

    server {
         listen 443;
         server_name mp.hanxing.store;
         ssl on;
         index index.html index.htm;
         ssl_certificate   cert/cert_mp.hanxing.store.crt;
         ssl_certificate_key  cert/cert_mp.hanxing.store.key;
         ssl_session_timeout 5m;
         ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
         ssl_prefer_server_ciphers on;

         location / {
            root   /public/sell/app/dist;
            index  index.php index.html index.htm;
         }

         location /sell {
             proxy_set_header   X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header   Host      $http_host;
             proxy_set_header X-NginX-Proxy true;
             proxy_pass         http://127.0.0.1:8080;
             proxy_redirect off;
         }

         error_page 404 /404.html;
              location = /40x.html {
         }

         error_page 500 502 503 504 /50x.html;
            location = /50x.html {
         }
    }
}

The above is the detailed content of Nginx configuration usage example analysis. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete