Home >Operation and Maintenance >Nginx >Nginx reverse proxy cache configuration to accelerate static web page access

Nginx reverse proxy cache configuration to accelerate static web page access

PHPz
PHPzOriginal
2023-07-04 18:09:071710browse

Nginx reverse proxy cache configuration to achieve static web page access acceleration

Introduction:
With the rapid development of the Internet, access speed has become a very important factor in website operations. In order to improve the access speed of web pages, we can use Nginx reverse proxy caching technology to accelerate web pages. This article will introduce how to use Nginx to configure reverse proxy cache to accelerate static web pages.

Nginx reverse proxy cache configuration:

  1. Install Nginx:
    First you need to install the Nginx server, which can be installed through package management tools such as apt-get and yum.
  2. Configure Nginx reverse proxy:
    Open the Nginx configuration file (usually located in /etc/nginx/nginx.conf) and find the configuration of the server part. Add the following code under server:
location / {
    proxy_pass http://backend;
    proxy_cache my_cache;
    proxy_cache_valid 200 304 12h;
    proxy_cache_valid any 5m;
    proxy_cache_key $host$scheme$request_uri;
    proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
    proxy_cache_background_update on;
    proxy_cache_lock on;
    proxy_cache_lock_timeout 5s;
    proxy_cache_lock_age 10s;
    proxy_ignore_headers Cache-Control;
    proxy_ignore_headers Set-Cookie;
    proxy_ignore_headers Expires;
    add_header X-Proxy-Cache $upstream_cache_status;
}

Explain the above configuration:

  • proxy_pass: Specify the backend server address of the reverse proxy, which can be Local port number or domain name.
  • proxy_cache: Specifies the name of the cache, which needs to be defined separately in the Nginx configuration file.
  • proxy_cache_valid: Specify the validity time of cached data. Here, the cache time for 200 and 304 status codes is set to 12 hours, and the cache time for other status codes is 5 minutes.
  • proxy_cache_key: Specifies the unique identifier of the cached data, which is generated using the domain name, protocol and request URI.
  • proxy_cache_use_stale: Set whether to use expired cache when the backend server fails.
  • proxy_cache_background_update: Set whether to update cache data in the background.
  • proxy_cache_lock: Set whether to enable cache lock to avoid multiple requests updating the cache at the same time.
  • proxy_ignore_headers: Set ignored response headers, Cache-Control, Set-Cookie and Expires are ignored here.
  • add_header: Add response header to display cache hit status.
  1. Configure Nginx cache:
    Open the main configuration file of Nginx and add the following code in the configuration of the http part:
proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:50m inactive=24h max_size=500m;

Explain the above configuration:

  • proxy_cache_path: Specify the cache path, cache level, cache area, inactivity time and maximum cache size.
  1. Restart the Nginx server:
    After completing the above configuration, save and exit the configuration file, and restart the Nginx server through the following command:
sudo service nginx restart

Example results:
After the above configuration, when a user accesses a website, Nginx will make a judgment based on the cache settings. If there is a corresponding static web page file in the cache, the cached data will be returned directly, thus realizing the acceleration of the web page.

Conclusion:
Through the configuration of Nginx reverse proxy cache, we can quickly accelerate access to static web pages. By properly configuring parameters such as cache validity period, cache key, and cache path, the access speed and user experience of web pages can be further improved. At the same time, Nginx reverse proxy cache can also reduce the load on the back-end server and improve the stability and reliability of the system.

Summary:
This article introduces how to use Nginx reverse proxy cache configuration to accelerate access to static web pages. With proper configuration, the access speed of the website can be improved and the load on the back-end server can be reduced. We hope that readers can configure it according to their own needs based on the sample code provided in this article, thereby improving the performance and user experience of the website.

The above is the detailed content of Nginx reverse proxy cache configuration to accelerate static web page access. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn