您的位置:首页 > 财经 > 产业 > 海报模板在线制作免费无水印_怎么在小程序里开店铺_网站服务器信息查询_站长之家seo查询官方网站

海报模板在线制作免费无水印_怎么在小程序里开店铺_网站服务器信息查询_站长之家seo查询官方网站

2025/4/2 12:54:08 来源:https://blog.csdn.net/TEUTEU/article/details/145929437  浏览:    关键词:海报模板在线制作免费无水印_怎么在小程序里开店铺_网站服务器信息查询_站长之家seo查询官方网站
海报模板在线制作免费无水印_怎么在小程序里开店铺_网站服务器信息查询_站长之家seo查询官方网站

目录

Nginx 缓存配置

SSL/TLS 配置


Nginx 缓存配置

  • 概念:Nginx 缓存配置允许服务器将频繁访问的资源(如网页、图片、脚本等)存储在内存或磁盘中,当再次接收到相同请求时,直接从缓存中读取并返回,减少对后端服务器的请求,从而显著提高网站的响应速度和性能,降低服务器负载。
  • 原理:Nginx 主要有代理缓存和 FastCGI 缓存两种缓存机制。
    • 代理缓存:当 Nginx 作为反向代理时,对于后端服务器返回的响应内容,Nginx 可以根据配置将其缓存起来。当下次有相同的请求时,Nginx 直接从缓存中返回数据,而无需再次向后端服务器转发请求。代理缓存通过proxy_cache_path指令指定缓存存储路径,通过proxy_cache_key指令定义缓存键(用于唯一标识缓存内容),通过proxy_cache_valid指令设置不同响应状态码对应的缓存时间。
    • FastCGI 缓存:主要用于缓存 FastCGI 程序(如 PHP 脚本)的输出结果。当 Nginx 接收到对 FastCGI 程序的请求时,会先检查缓存中是否存在对应的结果。如果存在,则直接返回缓存内容;否则,将请求转发给 FastCGI 服务器,获取结果后缓存起来并返回给客户端。FastCGI 缓存通过fastcgi_cache_path指令指定缓存路径,fastcgi_cache_key指令定义缓存键,fastcgi_cache_valid指令设置缓存时间。
  • 场景示例
    • 代理缓存示例:假设你有一个后端服务器运行在http://backend.example.com,你希望 Nginx 对其响应进行缓存。配置如下:
http {# 定义缓存路径、缓存级别、最大缓存大小等proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; server {listen 80;server_name example.com;location / {proxy_pass http://backend.example.com;proxy_cache my_cache; # 使用名为my_cache的缓存区域proxy_cache_key "$uri$is_args$args"; # 定义缓存键,包含请求的URI、是否有参数及参数内容proxy_cache_valid 200 302 60m; # 对于状态码为200和302的响应,缓存60分钟proxy_cache_valid 404 10m; # 对于状态码为404的响应,缓存10分钟proxy_cache_bypass $http_pragma $http_authorization; # 如果请求头中有pragma或authorization字段,则不使用缓存proxy_cache_revalidate on; # 当缓存过期时,Nginx会向源服务器验证缓存是否仍然有效}}
}

在这个配置中,proxy_cache_path指定了缓存存储在/data/nginx/cache目录,缓存分为两级(levels=1:2),缓存区域名为my_cache,大小为 10MB,最大缓存空间为 10GB,60 分钟内未被访问的缓存将被清除。location /块中,请求被代理到http://backend.example.com,同时配置了缓存相关的参数。

  • FastCGI 缓存示例:假设你有一个 PHP 应用,FastCGI 服务器运行在127.0.0.1:9000,你希望对 PHP 脚本的输出进行缓存。配置如下:
http {# 定义FastCGI缓存路径fastcgi_cache_path /data/nginx/fastcgi_cache levels=1:2 keys_zone=fastcgi_cache:10m inactive=60m; server {listen 80;server_name example.com;location ~ \.php$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;fastcgi_cache fastcgi_cache; # 使用名为fastcgi_cache的缓存区域fastcgi_cache_key "$uri$is_args$args"; # 定义缓存键fastcgi_cache_valid 200 60m; # 对于状态码为200的响应,缓存60分钟fastcgi_cache_bypass $http_pragma $http_authorization; # 如果请求头中有pragma或authorization字段,则不使用缓存fastcgi_cache_revalidate on; # 当缓存过期时,Nginx会向FastCGI服务器验证缓存是否仍然有效}}
}

此配置中,fastcgi_cache_path指定了 FastCGI 缓存的路径等相关设置。location ~ \.php$块针对 PHP 脚本请求,配置了 FastCGI 缓存相关参数,当请求 PHP 脚本时,Nginx 会根据配置进行缓存操作。

SSL/TLS 配置

  • 概念:SSL/TLS 配置用于在 Nginx 服务器上启用 HTTPS 协议,实现数据在客户端和服务器之间的加密传输,确保数据的安全性和完整性,防止数据被窃取或篡改。同时,使用 HTTPS 也有助于提升网站在搜索引擎中的排名。
  • 原理:客户端与服务器在建立连接时,会进行 SSL/TLS 握手过程。服务器会向客户端发送自己的 SSL 证书,证书包含服务器的公钥等信息。客户端验证证书的合法性后,生成一个随机的对称密钥,使用服务器的公钥对其进行加密,并发送给服务器。服务器使用自己的私钥解密得到对称密钥,之后双方使用这个对称密钥进行数据加密传输。
  • 场景示例:假设你已经从证书颁发机构(CA)申请了 SSL 证书,证书文件名为example.com.crt,私钥文件名为example.com.key,配置如下:
http {server {listen 443 ssl; # 监听443端口,启用SSLserver_name example.com;ssl_certificate /path/to/example.com.crt; # 指定SSL证书文件路径ssl_certificate_key /path/to/example.com.key; # 指定私钥文件路径ssl_protocols TLSv1.2 TLSv1.3; # 启用TLSv1.2和TLSv1.3协议,建议只启用较新的安全协议ssl_ciphers ECDHE - RSA - AES256 - GCM - SHA512:DHE - RSA - AES256 - GCM - SHA512:ECDHE - RSA - AES256 - GCM - SHA384:DHE - RSA - AES256 - GCM - SHA384:ECDHE - RSA - AES128 - GCM - SHA256:DHE - RSA - AES128 - GCM - SHA256; # 设置加密算法ssl_prefer_server_ciphers on; # 优先使用服务器端的加密算法配置ssl_session_cache shared:SSL:10m; # 设置SSL会话缓存,大小为10MBssl_session_timeout 10m; # 设置SSL会话超时时间为10分钟location / {# 网站的其他配置,如代理、静态文件服务等}}
}

在这个配置中,server块监听 443 端口并启用 SSL,通过ssl_certificatessl_certificate_key指定证书和私钥路径。同时配置了 SSL 协议版本、加密算法、会话缓存等参数,以确保安全且高效的 HTTPS 连接。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com