Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Windows nginx安装教程及简单实践

Windows nginx安装教程及简单实践

作者头像
习惯说一说
修改于 2019-08-01 02:26:51
修改于 2019-08-01 02:26:51
1.8K00
代码可运行
举报
运行总次数:0
代码可运行

这篇文章主要介绍了Windows nginx安装教程及简单实践的相关资料,需要的朋友可以参考下

概述

安装与使用

    安装

        从源代码编译 Nginx         Windows 安装         使用

    nginx 配置实战

    http反向代理配置     负载均衡配置     网站有多个webapp的配置     https反向代理配置

参考

概述

什么是nginx?

Nginx (engine x) 是一款轻量级的Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。

什么是反向代理?

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 可参考下图的示例:

安装与使用

安装

nginx官网下载地址

发布版本分为Linux和windows版本。

也可以下载源码,编译后运行。

从源代码编译 Nginx

把源码解压缩之后,在终端里运行如下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
./configuremakesudo make install

默认情况下,Nginx 会被安装在 /usr/local/nginx。通过设定编译选项,你可以改变这个设定。

Windows 安装

为了安装Nginx/Win32,需先下载它。然后解压之,然后运行即可。下面以C盘根目录为例说明下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd C:cd C:\nginx-0.8.54 start nginx

Nginx/Win32是运行在一个控制台程序,而非windows服务方式的。服务器方式目前还是开发尝试中。

使用

nginx的使用比较简单,就是几条命令。

常用到的命令如下:

nginx -s stop       快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 nginx -s quit       平稳关闭Nginx,保存相关信息,有安排的结束web服务。 nginx -s reload     因改变了Nginx相关配置,需要重新加载配置而重载。 nginx -s reopen     重新打开日志文件。 nginx -c filename   为 Nginx 指定一个配置文件,来代替缺省的。 nginx -t            不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 nginx -v            显示 nginx 的版本。 nginx -V            显示 nginx 的版本,编译器版本和配置参数。

如果不想每次都敲命令,可以在nginx安装目录下新添一个启动批处理文件startup.bat,双击即可运行。内容如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@echo offrem 如果启动前已经启动nginx并记录下pid文件,会kill指定进程nginx.exe -s stoprem 测试配置文件语法正确性nginx.exe -t -c conf/nginx.confrem 显示版本信息nginx.exe -vrem 按照指定配置去启动nginxnginx.exe -c conf/nginx.conf

nginx 配置实战

我始终认为,各种开发工具的配置还是结合实战来讲述,会让人更易理解。

http反向代理配置

我们先实现一个小目标:不考虑复杂的配置,仅仅是完成一个http反向代理。

nginx.conf配置文件如下:

注:conf/nginx.conf是nginx的默认配置文件。你也可以使用nginx -c指定你的配置文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#运行用户#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的进程IDpid 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; #定义使用www.xx.com访问 server_name www.helloworld.com; #首页 index index.html #指向webapp的目录 root D:\01_Workspace\Project\github\zp\SpringNotes\spring-security\spring-shiro\src\main\webapp; #编码格式 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:\01_Workspace\Project\github\zp\SpringNotes\spring-security\spring-shiro\src\main\webapp\views; #过期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; #} }}

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
nginx简易教程
Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
lyb-geek
2018/07/26
9820
nginx简易教程
nginx简易教程
nginx简易教程 概述 什么是nginx? Nginx (engine x) 是一款轻量级的Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 什么是反向代理? 反向代理(
静默虚空
2018/01/05
1.5K0
nginx简易教程
超实用的 Nginx 极简教程,覆盖了常用场景
Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
芋道源码
2019/10/29
9230
Nginx 极简教程(快速入门)
Demo目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快速看到演示效果。
lyb-geek
2019/08/22
5580
手拉手一起搞透Nginx !!
NGINX联合创始人安德鲁·阿列克谢夫(Andrew Alexeev)曾说:NGINX是为对Apache性能不满意的人而构建的。随着Internet需求的变化,Web服务器的工作也在变化。NGINX的构建比以往任何时候都更有效率,更可扩展,更安全,更强大。
架构师修行之路
2020/10/23
4970
手拉手一起搞透Nginx !!
超详细 Nginx 极简教程,傻瓜一看也会!
Nginx (engine x) 是一款轻量级的Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
Java技术栈
2018/12/13
7800
Nginx安装及配置详解
nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。
周小董
2019/03/25
1.4K0
Nginx安装及配置详解
windows上 nginx 配置代理服务,配置多域名,以及最简单实现跨域配置
本文介绍了Nginx如何实现反向代理,以及通过反向代理实现跨域的解决方案。通过配置Nginx,可以将本地服务映射到公网,实现域名访问,并利用Nginx的配置文件,实现请求转发、服务器端包括真实服务器和负载均衡,从而完成跨域请求的处理。
哎_小羊
2018/01/02
5.9K0
常用nginx配置项详解(一个简单的例子)
核心提示:Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。
后端技术探索
2018/08/09
3970
Nginx配置文件 - Java技术债务
如果更改了配置就要重启Nginx,要先关闭Nginx再打开?不是的,可以向Nginx发送信号,平滑重启!平滑重启命令:kill -HUP 主进程号或者进程号文件路径或者使用/usr/local/nginx/sbin/nginx -s reload
Java技术债务
2024/06/21
1360
Nginx配置文件 - Java技术债务
Nginx入门指北
Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
玖柒的小窝
2021/10/21
4000
Nginx入门指北
nginx安装和配置详解
nginx下载地址:http://nginx.org/en/download.html Windows直接选择合适的版本下载,解压后双击nginx.exe执行,访问http://localhost即可 Linux下载安装可以查看我这篇文章:Linux下安装和使用Nginx
共饮一杯无
2022/11/28
8620
Windows 安装+开机自启 Nginx+Nginx 配置文件解释
最近因为我同学毛都不会为了毕业服务器不敢用 Linux,用的是 Windows,然而用了 Windows 之后并没有想象中的那么顺利,毕竟要装一个 Web 服务器——Nginx。今天我先讲一下 Windows 下怎么安装 Nginx,然后如何配置其在 Windows 下开机自启,最后是 Nginx 配置文件解释。
不可言诉的深渊
2020/01/14
3.1K0
Windows 安装+开机自启 Nginx+Nginx 配置文件解释
史上最简单的 Nginx 教程,没有之一!
原文链接:https://juejin.im/post/5d81906c518825300
业余草
2019/09/25
3.7K0
史上最简单的 Nginx 教程,没有之一!
Nginx教程
Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
红目香薰
2022/11/29
5610
Nginx教程
Nginx负载均衡与反向代理
一、nginx配置属性详细说明: #全局设置 main  # 运行用户 user www-data;     # 启动进程,通常设置成和cpu的数量相等 worker_processes  1; # 全局错误日志及PID文件 error_log  /var/log/nginx/error.log; pid        /var/run/nginx.pid; # 工作模式及连接数上限 events {     use epoll; #epoll是多路复用IO(I/O Multiplexing)中的一种方
Sindsun
2018/04/28
9870
Nginx负载均衡与反向代理
Nginx安装过程(Linux)
1、 在安装nginx之前,要安装其他的一些相关软件,包括gcc、openssl、pcre和zlib,这里分别来解释一下这些都是什么东西:
用户5640963
2019/07/26
1.3K0
Nginx安装及详细配置
生产环境:前端采用nginx进行的部署,后端则是通过kubesphere的一键式部署。
小炜同学
2022/09/23
1.2K0
Nginx配置文件详细说明
在此记录下Nginx服务器nginx.conf的配置文件说明。 #运行用户 user www-data;     #启动进程,通常设置成和cpu的数量相等 worker_processes  1; #全局错误日志及PID文件 error_log  /var/log/nginx/error.log; pid        /var/run/nginx.pid; #工作模式及连接数上限 events {     use   epoll;             #epoll是多路复用IO(I/O Multipl
艳艳代码杂货店
2021/10/29
6000
Nginx配置文件及模块
Nginx是一个基于c语言开发的高性能http服务器及反向代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
HaydenGuo
2019/12/12
5900
Nginx配置文件及模块
相关推荐
nginx简易教程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验