一、安装nginx
nginx是一款高性能的Web服务器和反向代理服务器,可用于为Web应用程序提供负载均衡、缓存和访问限制等服务。在Windows下安装nginx需要先下载安装包,然后运行安装程序进行安装。以nginx-1.20.0为例,安装步骤如下:
下载地址:http://nginx.org/en/download.html 解压缩安装包到任意目录 在命令行中进入nginx安装目录 输入命令启动nginx:nginx.exe
启动后,在浏览器中输入http://localhost/即可看到nginx欢迎页面。若要停止nginx服务,可以在命令行中输入:nginx.exe -s stop。
二、nginx的基本配置
nginx的基本配置文件是nginx.conf,它位于nginx的安装目录下的conf子目录下。我们可以通过编辑nginx.conf来修改nginx的配置参数。具体配置方式如下:
http { server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } } }
以上示例配置中,listen指定nginx监听端口,server_name指定服务器的域名,location指定请求的URI,root指定请求资源的根目录,index指定访问默认文件的名称。可根据需要进行修改,重新启动nginx服务即可生效。
三、nginx的反向代理配置
nginx的反向代理功能可将请求转发到其他服务器上进行处理,可以用于负载均衡以及隐藏真实服务器等功能。具体配置方式如下:
http { upstream myserver { server 192.168.1.10:8080; server 192.168.1.11:8080; } server { listen 80; server_name localhost; location / { proxy_pass http://myserver; } } }
以上示例配置中,upstream指定后端服务器列表,server指定服务器的IP地址及端口号,location指定请求的URI,proxy_pass指定反向代理的目标地址。可根据需要进行修改,重新启动nginx服务即可生效。
四、nginx的负载均衡配置
nginx的负载均衡功能可将请求转发到多个服务器上进行处理,可用于提高系统的吞吐量和可用性。具体配置方式如下:
http { upstream myserver { server 192.168.1.10:8080; server 192.168.1.11:8080; server 192.168.1.12:8080; } server { listen 80; server_name localhost; location / { proxy_pass http://myserver; proxy_set_header Host $host; } } }
以上示例配置中,upstream指定后端服务器列表,server指定服务器的IP地址及端口号,location指定请求的URI,proxy_pass指定反向代理的目标地址,proxy_set_header指定HTTP头信息。可根据需要进行修改,重新启动nginx服务即可生效。
五、nginx的缓存配置
nginx的缓存功能可将经常使用的资源保存在缓存中,提高资源的访问速度。具体配置方式如下:
http { proxy_cache_path C:/nginx/cache levels=1:2 keys_zone=my_cache:10m inactive=60m; server { listen 80; server_name localhost; location / { proxy_pass http://backend; proxy_cache my_cache; proxy_cache_valid 200 60m; proxy_cache_valid 404 1m; proxy_cache_bypass $http_pragma; proxy_cache_revalidate on; } } }
以上示例配置中,proxy_cache_path指定缓存路径及相关参数,levels指定缓存目录层次,keys_zone指定缓存存储区域,inactive指定缓存的过期时间,server指定监听端口及域名,location指定请求的URI,proxy_pass指定反向代理的目标地址,proxy_cache指定使用的缓存区域,proxy_cache_valid指定缓存的有效时间,proxy_cache_bypass指定是否强制缓存更新,proxy_cache_revalidate指定是否重新验证缓存数据。可根据需要进行修改,重新启动nginx服务即可生效。