本文主要是介绍windows下安装Nginx全过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《windows下安装Nginx全过程》文章介绍了HTTP和反向代理服务器的概念,包括正向代理和反向代理的区别,并详细描述了如何安装和配置Nginx作为反向代理服务器...
概念
是一个高性能的HTTP和反向代理web服务器。
代理
正向代理
一个客户端与目标服务器之间的代理服务器。
正向代理是代表客户端来进行访问目标服务器,我们要获取到目标服务器的资源,客户端配置代理服务器地址,客户端使用代理服务器地址访问目标地址,可以隐藏客户端的地址。
比如我们的科学上网就是使用的正向代理。
反向代理
一个客户端与目标服务器之间的代理服务器。
反向代理是代表的服务器来接收客户端的访问请求,客户端不知道目标服务器的存在,对客户端来说,目标服务器是无感的,代理服务器就是目标服务器,代理服务器将请求转发给目标服务器获取返回资源后,再将返回的资源返回给客户端,可以隐藏目标服务器的地址。
比如nginx服务器就是反向代理。
安装
1.下载地址:nginx: 下载
2.解压到自定义的文件夹下

基本属性
nginx.conf
查询
nginx的主配置文件地址/etc/nginx/nginx.conf,可以使用cat -n nginx.conf来查看配置
结构
main # 全局配置,main模块设置的指令将会影响其他所有设置,通常设置nginx的用户(组)、允许生成的woker_process数目、nginx进程PID存放目录、日志存放路径和类型以及配置文件的引入 |——events # 配置nginx服务器或用户的网络,通常设置包括是否开启对多个work_process下的网络进行序列化、是否允许同时接收多个网络连接、选取哪种事件模型来处理连接请求、每个work_process可以同时支持的最大连接数 |——http # 配置代理、缓存、日志等绝大部分功能及第三方模块配置 |——upstream # 配置后端服务器具体地址,负载均衡配置不可或缺的部分 |——server # 配置虚拟主机相关参数,一个server对与用户来说就是一个虚拟主机,一个http块可以包含多个server块, |——location # server块可以包含多个location块,用于匹配uri,地址定向、数据缓存和应答控制等功能,还有许多其他第三方模块也在这里配置
属性
# 定义运行nginx的用户与用户组 user www www; # nginx的进程数,建议设置为等于CPU总核数 worker_processes 8; #http://www.chinasem.cn 全局错误日志定义类型编程[debug|info|notice|error|crit] error_log /usr/local/nginx/logs/error.log info; # 进程pid文件 pid /usr/local/nginx/logs/nginx.pid; events{ # 设置网路连接序列化,防止惊群现象发生,默认为on accept_mutex on; # 设置一个进程是否同事接受多个网络连接,默认为off multi_accpet on; # 事件驱动模型[select|poll|kqueue|epoll|resig|/dev/poll|eventport] use epoll; # 最大连接数,默认为512 worker_connections 1024; } # 设定htChina编程tp服务器,利用它的反向代理功能提供负载均衡支持 http { # 常用配置 # 文件扩展名与文件类型映射表 include mime.types; # 设定通过nginx上传文件的大小 client_max_body_size 8m; # 长连接超时时间,单位是秒 keepalive_timeout 120; # 默认文件类型 default_type application/octet-stream; # 默认编码 charset utf-8; # 负载均衡配置 upstream lyy.api{ # upstream的负载均衡,weight是权重,可以根据机器配置定义权重,weight参数表示权值,权值越高被分配到的记录越大;down表示当前的server暂时不参与负载;max_fails表示允许请求失败的次数默认为1,当超过最大次数时,返回proxy_next_upstream模块定义的错误;fail_timeout表示max_fails次失败后,暂停的时间;backup表示其他所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻 server 192.168.1.10:80 weight=1 backup; server 192.168.1.11:80 weight=2 down; server 192.168.1.12:80 weight=3 max_fails=3 fail_timeout=15; # ngipythonnx的upstream目前支持4种方式的分配 # 1、轮询(默认):每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除 # 2、weight:指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 # 3、ip_hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题 # 4、fair:按后端服务器的相应时间来分配请求,响应时间短的优先分配。 } # 虚拟主机的配置 server{ # 监听端口 listen 80; # 域名可以有多个,用空格隔开 server_name www.lyy.com www.lyy.cn; index index.html index.htm index.php; root /data/www/lyy; # 定义本虚拟主机的访问日志 Access_log /usr/local/nginx/logs/host.access.log main; access_log /usr/local/nginx/logs/host.access.404.log log404; # 对"/api"启用反向代理 location /api { # 所有请求了ip:port/api/**的接口都会转发到lyy.api负载配置去 proxy_pass lyy.api; # 或者直接配置地址 # proxy_pass http:127.0.0.1:11001; # 允许客户端请求的最大单文件字节数 client_max_body_size 10m; # 后端服务器连接的超时时间 proxy_connect_timeout 90; # 后端服务器数据回传超时时间 proxy_send_timeout 90; # 连接成功后,后端服务器响应超时时间 proxy_read_timeout 90; } } }
使用
运行
在nginx目录下打开cmd,然后执行启动命令,双击nginx.exe后,在修改配置后,再重启、关闭nginx都不生效,只有在任务管理器中进行关闭所有nginx进程。
start nginx


重启
修改nginx.conf的配置后,重启nginx
nginx.exe -s reload
修改端口为8002,然后运行重启命令

停止
nginx -s stop


总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程China编程(www.cppcnsjavascript.com)。
这篇关于windows下安装Nginx全过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!