windows:nginx配置http、https反向代理
一、下载 Windows 版本的 nginx
nnginx下载:http://nginx.org/en/download.html

推荐稳定版本。下载完成后,解压得到 nginx-1.14.0 ,我把它放到C盘目录下。

二、将 nginx 设置为windows服务
从nginx官网下载的nginx是绿色版本的,双击执行程序才能开启监听工作。我们借助 “Windows Service Wrapper” 小工具,把 nginx 做成 windows服务,这样能更方便我们以后的维护和配置工作。
Windows Service Wrapper 下载地址:http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/1.18/winsw-1.18-bin.exe
下载完成后,
- 将其放在nginx的根目录下,我这里的路径是 C:\nginx-1.14.0 ,把下载得到的文件放到这个路径下
- 将其重命名为nginx-service.exe
- 创建配置文件。新建一个记事本,将文件名改为 nginx-service ,txt 后缀改为 xml,即完整文件名为 nginx-service.xml (注意,配置文件名要和2中的nginx-service一致)
- 创建nginx-service.exe.config(为支持NET 4.0 Runtime,默认只支持 NET 2.0 Runtime)
操作完成后,文件结构如下:

- 配置nginx-service.xml
用记事本或其他编译器打开 nginx-service.xml 文件,输入以下内容并保存(C:\nginx-1.14.0 为 nginx 的根目录,请根据实际情况更改):
<service>
<id>nginx</id>
<name>Nginx Service</name>
<description>High Performance Nginx Service</description>
<logpath>C:\nginx-1.14.0\logs</logpath>
<log mode="roll-by-size">
<sizeThreshold>10240</sizeThreshold>
<keepFiles>8</keepFiles>
</log>
<executable>C:\nginx-1.14.0\nginx.exe</executable>
<startarguments>-p C:\nginx-1.14.0</startarguments>
<stopexecutable>C:\nginx-1.14.0\nginx.exe</stopexecutable>
<stoparguments>-p C:\nginx-1.14.0 -s stop</stoparguments>
</service>
- 配置nginx-service.exe.config文件,输入以下内容并保存:
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" />
<supportedRuntime version="v4.0" />
</startup>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>
- 安装nginx服务
进入nginx根目录,我这里是 C:\nginx-1.14.0,按住 shift 键,右击空白处,选择 “在此处打开命令窗口”

通过dos命令安装nginx服务,输入 nginx-service.exe install (卸载服务:nginx-service.exe uninstall)

安装完成后,即可在windows服务里找到 nginx-service 的服务

三、配置反向代理
nginx配置文件路径,根目录/conf/nginx.conf,我这里是 C:\nginx-1.14.0\conf\nginx.conf,在修改之前,我们先将原始文件备份一份,复制拷贝nginx.conf,更名在nginx.conf.bak
- http反向代理
server {
listen ;
server_name www.test1.com; #输入你的域名
location / {
#root html;
#index index.html index.htm;
proxy_pass http://192.168.90.99:8080; #源服务器地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log logs/www.test1.com.log; #访问日志路径,将www.test1.com更改为你的域名,提高辨识度。
}
- https反向代理
server {
listen ssl;
server_name www.test2.com; #输入你的域名 ssl_certificate C:\ssl\1_www.test2.com.crt; #证书路径,支持 crt,pem 类型的证书,不支持 pfx 类型的证书
ssl_certificate_key C:\ssl\2_www.test2.com.key; #证书key路径 ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on; location / {
#root html;
#index index.html index.htm;
proxy_pass http://192.168.90.99:99;
proxy_set_header Host $host;
proxy_redirect http:// $scheme://; #做https跳转
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log logs/www.test2.com.log; #访问日志路径,将www.test2.com更改为你的域名,提高辨识度。}
tips1:更改 nginx 配置文件后,需重启 nginx 服务才能生效;
tips2:配置https反向代理服务器,证书只需在反向代理服务器配置,源服务器配置常规 http 访问即可。
安装nginx并创建windows服务参考文档:https://www.cnblogs.com/edward2013/p/5506588.html
windows:nginx配置http、https反向代理的更多相关文章
- nginx配置, 启动命令, 反向代理配置
2014年1月3日 13:52:07 喜欢这样的风格,干货 http://huoding.com/2013/10/23/290 -----------------下边是我自己的经验(windows)- ...
- nginx配置本地域名反向代理实现本地多域名80访问
什么是反向代理? 代理:通过客户机的配置,实现让一台服务器代理客户机,客户的所有请求都交给代理服务器处理. 反向代理:用一台服务器,代理真实服务器,用户访问时,不再是访问真实服务器,而是代理服务器. ...
- nginx配置后端映射(反向代理proxy_pass)
说明:配置反向代理proxy_pass和location无关,location后面加不加 / 都可以 1.配置 proxy_pass 时,当在后面的 url 加上了 /,相当于是绝对路径,则 Ngin ...
- 下载编译安装Apache HTTP Server 2.4.23以及配置HTTP/HTTPS反向代理
http://blog.csdn.net/gangchengzhong/article/details/52910225 [注意,在编译make时出现的错误并不是文章中说的openssl的版本问题,而 ...
- Nginx插件之openresty反向代理和日志滚动配置案例
Nginx插件之openresty反向代理和日志滚动配置案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.openresty介绍 1>.Nginx介绍 Nginx是一款 ...
- Nginx总结(五)如何配置nginx和tomcat实现反向代理
前面讲了如何配置Nginx虚拟主机,大家可以去这里看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.html 今天要 ...
- Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务
目录 目录 1.GitLab11.3.9的安装 2.域名在阿里云托管,申请免费的1年证书 3.Gitlab 的 https 配置 4.Nginx 配置 https,反向代理指向 Gitlab 配置 目 ...
- 如何配置nginx和tomcat实现反向代理?
什么是反向代理 通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务 ...
- nginx基于TCP的反向代理
一.4层的负载均衡 Nginx Plus的商业授权版开始具有TCP负载均衡的功能.从Nginx 1.7.7版本开始加入的,现在变成了一个商业收费版本,想要试用,需要在官网申请.也就是说,Nginx除了 ...
随机推荐
- XML 实体
实体可以简单的理解为引用数据项的方法,可以是普通的文本也可以是二进制数据. 实体可以分为通用实体和参数实体.通用实体用于XML当中,用于引用文本或者二进制数据,而参数实体只能在DTD中使用.通用实体与 ...
- 用java做操作系统内核:软盘读写
在前两节,我们将一段代码通过软盘加载到了系统内存中,并指示cpu执行加入到内存的代码,事实上,操作系统内核加载也是这么做的.只不过我们加载的代码,最大只能512 byte, 一个操作系统内核,少说也要 ...
- Rails 建立一个资源
在blog 应用程序中.你可以通过脚手架(scaffolded)开始建立一个资源. 这将是单一的blog 提交.请输入以下命令 $ rails generate scaffold Post name: ...
- < Python Index >
1. 基本语法 1.1 常量/变量 1.2 运算符 1.3 表达式 1.4 程序结构 2. 内置数据结构 2.1 列表 2.2 元组 2.3 集合 2.4 st ...
- Visual Studio最常用的快捷键
Ctrl + J:快捷提示,强迫智能感知: Ctrl + 空格键:使用 IntelliSense(智能感知)自动完成: Ctrl + Z:撤销,回退键: Ctrl + Shift + 空格:强迫显示参 ...
- C/C++ 类型内存占用详解
最近做一些面试题目碰到了很多次考察C/C++类型内存占用的题目,主要考察队C/C++的指针.类型等的熟悉程度. 本blog为了方面大家参考,总结了常见的类型内存占用的情况,能力所限,若有问题,请指出! ...
- Java基础教程(22)--异常
一.什么是异常 异常就是发生在程序的执行期间,破坏程序指令的正常流程的事件.当方法中出现错误时,该方法会创建一个对象并将其交给运行时系统.该对象称为异常对象,它包含有关错误的信息,包括错误的类型和 ...
- mysql中的坑
1,MySQL建表中double类型不能限制数据长度! 2,……
- git之回退
1:本地已commit,未push到远程仓库 1)git log: 查看commit日志,获取commit的id 2) git reset --hard commit_id: ...
- 黑客之google入侵网站常用方式 2
一: 在搜索框上输入: “index of/ ” inurl:lib 再按搜索你将进入许多图书馆,并且一定能下载自己喜欢的书籍. 在搜索框上输入: “index of /” cnki 再按搜索你就可以 ...