优秀的 Nginx 极简教程,覆盖了常用场景
| nginx -s reopen 重新打开日志文件。 nginx -c filename 为 Nginx 指定一个配置文件,来代替缺省的。 nginx -t 不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 nginx -v 显示 nginx 的版本。 nginx -V 显示 nginx 的版本,编译器版本和配置参数。 如果不想每次都敲命令,可以在 nginx 安装目录下新添一个启动批处理文件startup.bat,双击即可运行。内容如下: @echo off rem 如果启动前已经启动nginx并记录下pid文件,会kill指定进程 nginx.exe -s stop 
 rem 测试配置文件语法正确性 nginx.exe -t -c conf/nginx.conf 
 rem 显示版本信息 nginx.exe -v 
 rem 按照指定配置去启动nginx nginx.exe -c conf/nginx.conf 如果是运行在 Linux 下,写一个 shell 脚本,大同小异。nginx 配置实战 我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。 我们先实现一个小目标:不考虑复杂的配置,仅仅是完成一个 http 反向代理。 nginx.conf 配置文件如下: 注:conf / nginx.conf 是 nginx 的默认配置文件。你也可以使用 nginx -c 指定你的配置文件 #运行用户 
 #user somebody; 
 #启动进程,通常设置成和cpu的数量相等 
 worker_processes 1; 
 #全局错误日志 
 error_log D:/Tools/nginx-1.10.1/logs/error.log; 
 error_log D:/Tools/nginx-1.10.1/logs/notice.log notice; 
 error_log D:/Tools/nginx-1.10.1/logs/info.log info; 
 #PID文件,记录当前启动的nginx的进程ID 
 pid D:/Tools/nginx-1.10.1/logs/nginx.pid; 
 #工作模式及连接数上限 
 events { 
 worker_connections 1024; #单个后台worker process进程的最大并发链接数 
 } 
 #设定http服务器,利用它的反向代理功能提供负载均衡支持 
 http { 
 #设定mime类型(邮件支持类型),类型由mime.types文件定义 
 include D:/Tools/nginx-1.10.1/conf/mime.types; 
 default_type application/octet-stream; 
 #设定日志 
 log_format main '[$remote_addr] - [$remote_user] [$time_local] "$request" ' 
 '$status $body_bytes_sent "$http_referer" ' 
 '"$http_user_agent" "$http_x_forwarded_for"'; 
 access_log D:/Tools/nginx-1.10.1/logs/access.log main; 
 rewrite_log on; 
 #sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用, 
 #必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime. 
 sendfile on; 
 #tcp_nopush on; 
 #连接超时时间 
 keepalive_timeout 120; 
 tcp_nodelay on; 
 #gzip压缩开关 
 #gzip on; 
 #设定实际的服务器列表 
 upstream zp_server1{ 
 server 127.0.0.1:8089; 
 } 
 #HTTP服务器 
 server { 
 #监听80端口,80端口是知名端口号,用于HTTP协议 
 listen 80; 
 #定义使用访问 
 server_name ; 
 #首页 
 index index.html 
 #指向webapp的目录 
 root D: 1_WorkspaceProjectgithubzpSpringNotesspring-securityspring-shirosrcmainwebapp; 
 #编码格式 
 charset utf-8; 
 #代理配置参数 
 proxy_connect_timeout 180; 
 proxy_send_timeout 180; 
 proxy_read_timeout 180; 
 proxy_set_header Host $host; 
 proxy_set_header X-Forwarder-For $remote_addr; 
 #反向代理的路径(和upstream绑定),location 后面设置映射的路径 
 location / { 
 proxy_pass http://zp_server1; 
 } 
 #静态文件,nginx自己处理 
 location ~ ^/(images|javascript|js|css|flash|media|static)/ { 
 root D: 1_WorkspaceProjectgithubzpSpringNotesspring-securityspring-shirosrcmainwebappviews; 
 #过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。 
 expires 30d; 
 } 
 #设定查看Nginx状态的地址 
 location /NginxStatus { 
 stub_status on; 
 access_log on; 
 auth_basic "NginxStatus"; 
 auth_basic_user_file conf/htpasswd; 
 } 
 #禁止访问 .htxxx 文件 
 location ~ /.ht { 
 deny all; 
 } 
 #错误处理页面(可选择性配置) 
 #error_page 404 /404.html; 
 #error_page 500 502 503 504 /50x.html; 
 #location = /50x.html { 
 # root html; 
 #} 
 } 
 } 
 好了,让我们来试试吧: 
 启动 webapp,注意启动绑定的端 好了,让我们来试试吧: 启动 webapp,注意启动绑定的端口要和 nginx 中的 upstream 设置的端口保持一致。 更改 host:在 C:WindowsSystem32driversetc 目录下的 host 文件中添加一条 DNS 记录 (编辑:源码网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 

