Windows下的Nginx战役,人不作就不会死!就像是拿着麦当劳的优惠券去买肯德基一样,别扭啊

  Nginx是一款轻量级的Web 服务器、反向代理服务器、邮件服务器等等集一大串荣誉于一身的大牌人物!他是一个俄国的富家子弟,但对于老美这个邻居家的小孩Windows却不是那么和善,性格,品相各异!毕竟不是一个妈生的孩子,╮( ̄▽ ̄")╭,不是一个妈生的...命运就是那么的捉弄,越是不想发生的、越是不想见到的、越是你躲避的,他就是会跳在你面前,张牙舞爪!有一天,Nginx去老美家办事,完了,没有媒介,2人沟通不畅,磕磕绊绊,好不舒坦...

切回正题,唠叨了半天,我们来看看怎么在Windows上编译Nginx模块,我是知识的搬运工(Nginx官网方法

准备工作:

  1、下载 VS2010+ VS2010 SP1 (C++编译环境) ->安装完成

  2、下载 MSYS1.0 (GNU环境)-> 安装完成

  3、下载 ActivePerl(SSL环境,自行下载 64位 or 32 位)-> 安装完成

  4、下载 Mercurial(Nginx源码下载器,自行下载 64位 or 32 位) -> 安装完成

  5、下载 PCRE 8.39:ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/(SSL相关,库函数)

  6、下载 zlib1.2.8(SSL相关,库函数)

  7、下载 OpenSSL 1.0.1e

操作步骤

1、获取Nginx源码:打开Cmd命令,切换到Mercurial安装目录,执行以下命令:

  1. hg clone http://hg.nginx.org/nginx  

2、安置资源包:在Nginx根目录下,创建 objs 和 lib 层级子目录,如下图层级,放入解压后的:PREC、zlib、OpenSSl

   

3、创建编译命令集:在Nginx根目录下,创建build.bat,文本内容如下:

  1. auto/configure --with-cc=cl --builddir=objs --prefix= \
  2. --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid \
  3. --http-log-path=logs/access.log --error-log-path=logs/error.log \
  4. --sbin-path=nginx.exe --http-client-body-temp-path=temp/client_body_temp \
  5. --http-proxy-temp-path=temp/proxy_temp \
  6. --http-fastcgi-temp-path=temp/fastcgi_temp \
  7. --with-cc-opt=-DFD_SETSIZE= --with-pcre=objs/lib/pcre-8.39 \
  8. --with-zlib=objs/lib/zlib-1.2. --with-openssl=objs/lib/openssl-1.0.1e \
  9. --with-select_module --with-http_ssl_module

4、生产MakeFile资源:运行MSYS(安装完成后,自动在桌面有快捷方式)切换到Nginx根目录,执行以下命令:

  1. build.bat
  1. 操作如下图:

5、编译Nginx源码(过程1分半钟):运行VS2010命令行,切换到Nginx根目录,执行以下命令:

  1. nmake -f objs/Makefile

    

6、收工!@@#@#@¥@#¥#……%&……*&!

    

by:海豚湾-丰

  1.  

Windows编译Nginx源码的更多相关文章

  1. Nginx (一)Windows下编译Nginx源码以及安装 nginx for windows方法步骤

    转载自: http://apps.hi.baidu.com/share/detail/11192699#content Nginx介绍: Nginx ("engine x")是一个 ...

  2. llinux 环境安装编译 nginx (源码安装包)

    简介: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,供俄国 ...

  3. Nginx源码编译

    1. 概述 有时由于添加了自己编写的c++模块,或者改了源码的一些名称.配置什么的,需要自行编译nginx. 可以先下下来源码,然后需要的话就自己改下源码或增加模块,最后再编译成linux或者wind ...

  4. windows 平台使用 VS2017 编译openssl源码

    windows 平台使用 VS2017 编译openssl源码 1)依赖安装 安装 perl 脚本解释器 下载 http://libevent.net/download 安装 nasm 汇编器 C:\ ...

  5. Windows 10 x64 下编译 Hadoop 源码

    Windows 10 x64 下编译 Hadoop 源码 环境准备 Hadoop并没有提供官方的 Windows 10 下的安装包,所以需要自己手动来编译,官方文档中 BUILDING.txt 文件中 ...

  6. windows 平台使用 VS2017 编译 libevent 源码

    一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...

  7. Windows,linux下编译qt源码(比较简单)

    一.linux下静态编译qt源码 1.取到qt源码并解压到文件夹 2.cd到qt目录下 3.使用configure生成makefile ./configure–prefix /opt/qtstatic ...

  8. 01.LNMP架构-Nginx源码包编译部署详细步骤

    操作系统:CentOS_Server_7.5_x64_1804.iso 部署组件:Pcre+Zlib+Openssl+Nginx 操作步骤: 一.创建目录 [root@localhost ~]# mk ...

  9. Nginx源码编译安装选项

    [Nginx源码编译过程] make是用来编译的,它从Makefile中读取指令,然后编译. make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置. configu ...

随机推荐

  1. 编译器开发系列--Ocelot语言5.表达式的有效性检查

    本篇将对"1=3""&5"这样无法求值的不正确的表达式进行检查. 将检查如下这些问题.●为无法赋值的表达式赋值(例:1 = 2 + 2)●使用非法的函数 ...

  2. Oracle常用SQL函数整理

    --返回ASCII码select  ASCII('A') "A的ASCII码" ,ASCII('a') "a的ASSCII码" from dual ; --反向 ...

  3. 进程监控工具supervisor 启动Mongodb

    进程监控工具supervisor 启动Mongodb 一什么是supervisor Superviosr是一个UNIX-like系统上的进程监控工具. Supervisor是一个Python开发的cl ...

  4. Nodejs之MEAN栈开发(六)---- 用Angular创建单页应用(上)

    在上一节中我们学会了如何在页面中添加一个组件以及一些基本的Angular知识,而这一节将用Angular来创建一个单页应用(SPA).这意味着,取代我们之前用Express在服务端运行整个网站逻辑的方 ...

  5. Windows forfiles(删除历史文件)

    200 ? "200px" : this.width)!important;} --> 介绍 forfiles是windows自带的一个批量删除命令,对于时间的判断是通过文件 ...

  6. Java继承

    Java只支持单继承,不支持多继承. 一个类只能有一个父类,不可以有多个父类. class SubDemo extends Demo{} //ok class SubDemo extends Demo ...

  7. Integer.parseInt 引发的血案

    Integer.parseInt 处理一个空字符串, 结果出错了, 程序没有注意到,搞了很久, 引发了血案啊!! 最后,终于 观察到了, 最后的部分: Caused by: java.lang.NoC ...

  8. Atitit 图像处理的心得与疑惑 attilax总结

    Atitit 图像处理的心得与疑惑 attilax总结 1.1. 使用类库好不好??还是自己实现算法1 1.2. 但是,如果遇到类库体积太大,后者没有合适的算法,那就只能自己开发算法了1 1.3. 如 ...

  9. Atitit 图像处理 调用opencv 通过java  api   attilax总结

    Atitit 图像处理 调用opencv 通过java  api   attilax总结 1.1. Opencv java api的支持 opencv2.4.2 就有了对java api的支持1 1. ...

  10. ASP.NET Core管道深度剖析(4):管道是如何建立起来的?

    在<管道是如何处理HTTP请求的?>中,我们对ASP.NET Core的请求处理管道的构成以及它对请求的处理流程进行了详细介绍,接下来我们需要了解的是这样一个管道是如何被构建起来的.这样一 ...