How to implement status statistics in nginx
Basic introduction
ngx_http_stub_status_module: This module provides a simple page that displays the current basic status statistics of Nginx, such as the number of active connections, number of request processing, request delay, etc. , can be enabled through the settings command.
ngx_http_status_module: This module provides a more comprehensive status information page, including basic status statistics of nginx, detailed information of the current connection, status information of each upstream, and server Status information, etc. Can be enabled via the settings command.
ngx_http_upstream_module: This module provides some instructions for monitoring upstream status, such as checking whether the back-end server in upstream is healthy, statistics of request response time, connection time, etc.
ngx_http_realip_module: This module can be used to pass the real client IP address to the back-end server in a reverse proxy scenario, so that the back-end server can perform IP-related statistics and processing .
ngx_http_limit_conn_module and ngx_http_limit_req_module: These two modules can be used to limit the number of concurrent connections and request frequency to prevent malicious attacks and resource waste.
ngx_http_status_module module
ngx_http_status_module module: This module provides a more comprehensive status information page, including Nginx’s basic status statistics, current connection details, The status information of each upstream, the status information of the server, etc. It can be enabled through setting instructions, for example:
location /nginx_status { status; access_log off; allow 127.0.0.1; deny all; }
You can view the status information of the server by accessing http://server_address/nginx_status.
auth_basic
In Nginx, you can use the auth_basic directive to enable HTTP Basic Authentication to enhance the security of the website. HTTP basic authentication is a simple authentication method that requires users to enter their username and password when accessing a website, and then sends this information to the server for verification through the HTTP protocol. To enable HTTP Basic Authentication using the auth_basic directive, you need to perform the following steps:
location /status { auth_basic "wjz site"; auth_basic_user_file htpasswd; stub_status; }
htpasswd
htpasswd is a command line tool for managing HTTP Basic Authentication password files. Used to create, modify and delete user and password information in password files.
[root@GOLANG conf]# yum install http-tools -y [root@GOLANG conf]# htpasswd -c /usr/local/wjz99/conf/htpasswd z New password: Re-type new password: Adding password for user z [root@GOLANG conf]# cat htpasswd z:$apr1$un8Hrvh8$W2FH0bMYZTOO5nlsC/JrM0
Hide NGINX version
Avoiding displaying the Nginx version number is a security measure that prevents attackers from exploiting known Nginx vulnerabilities to attack the server. Typically, attackers scan servers to detect known vulnerabilities in versions of applications they contain, and then exploit those vulnerabilities to attack the server. Hiding the Nginx version number can prevent attackers from easily discovering and exploiting Nginx vulnerabilities. In addition, hiding the Nginx version can also make it difficult for attackers to determine other software and configuration information used on the server, thereby increasing the difficulty for attackers to invade the server and improving the security of the server. Adopting a simple yet effective security measure of hiding your Nginx version can enhance your server's security and reduce the risk of attacks.
http { include mime.types; default_type application/octet-stream; server_tokens off; #隐藏nginx的版本号 }
The above is the detailed content of How to implement status statistics in nginx. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



How to confirm whether Nginx is started: 1. Use the command line: systemctl status nginx (Linux/Unix), netstat -ano | findstr 80 (Windows); 2. Check whether port 80 is open; 3. Check the Nginx startup message in the system log; 4. Use third-party tools, such as Nagios, Zabbix, and Icinga.

How to configure Nginx in Windows? Install Nginx and create a virtual host configuration. Modify the main configuration file and include the virtual host configuration. Start or reload Nginx. Test the configuration and view the website. Selectively enable SSL and configure SSL certificates. Selectively set the firewall to allow port 80 and 443 traffic.

In Linux, use the following command to check whether Nginx is started: systemctl status nginx judges based on the command output: If "Active: active (running)" is displayed, Nginx is started. If "Active: inactive (dead)" is displayed, Nginx is stopped.

Steps to start Nginx in Linux: Check whether Nginx is installed. Use systemctl start nginx to start the Nginx service. Use systemctl enable nginx to enable automatic startup of Nginx at system startup. Use systemctl status nginx to verify that the startup is successful. Visit http://localhost in a web browser to view the default welcome page.

Starting an Nginx server requires different steps according to different operating systems: Linux/Unix system: Install the Nginx package (for example, using apt-get or yum). Use systemctl to start an Nginx service (for example, sudo systemctl start nginx). Windows system: Download and install Windows binary files. Start Nginx using the nginx.exe executable (for example, nginx.exe -c conf\nginx.conf). No matter which operating system you use, you can access the server IP

The server does not have permission to access the requested resource, resulting in a nginx 403 error. Solutions include: Check file permissions. Check the .htaccess configuration. Check nginx configuration. Configure SELinux permissions. Check the firewall rules. Troubleshoot other causes such as browser problems, server failures, or other possible errors.

There are two ways to solve the Nginx cross-domain problem: modify the cross-domain response header: add directives to allow cross-domain requests, specify allowed methods and headers, and set cache time. Use CORS modules: Enable modules and configure CORS rules that allow cross-domain requests, methods, headers, and cache times.

Answer to the question: 304 Not Modified error indicates that the browser has cached the latest resource version of the client request. Solution: 1. Clear the browser cache; 2. Disable the browser cache; 3. Configure Nginx to allow client cache; 4. Check file permissions; 5. Check file hash; 6. Disable CDN or reverse proxy cache; 7. Restart Nginx.
