您的位置:首页 > 运维架构 > Nginx

Windows下编译安装64位Nginx

2016-11-26 13:08 375 查看
  前几天在windows下成功安装了lighttpd,个人觉得有经验了,再编译安装Nginx应该是没有问题的,同时,网上的前辈们(写的文章)也在那里指引着方向,肯定没有问题的,但还是出了一点小状况,却花了大功夫解决,下面,把我编译安装Nginx的过程总结记录如下:

  我使用的是Window10(64位),Cygwin2.876(64位),Nginx1.11.6

一、安装Cygwin

  有了安装lighttpd的经验,安装Cygwin时,先在网上查阅相关文档,确定安装以下软件包:

  gcc、gcc-core、gcc-g++、make、pcre、openssl、zlib、crypt、iconv等

  选好了要安装的软件(包),一路“下一步”,直到安装完成。

二、编译Nginx

  首先在C:盘创建目录 nginx ,然后下载Nginx原码文件 nginx-1.11.6.tar.gz 到nginx目录,并解压nginx-1.11.6.tar.gz到
c:\nginx\nginx1.11.6 目录下。

  进入Cygwin环境,依次执行以下命令:

  $ cd c:\nginx

  $ cd nginx-1.11.6

  $ ./configure --prefix=/cygdrive/c/nginx --sbin-path=/cygdrive/c/nginx --with-cc-opt="-D FD_SETSIZE=4096" --with-select_module --with-poll_module --with-http_ssl_module --with-http_realip_module --with-http_addition_module
--with-http_xslt_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail --with-cpp_test_module --with-mail_ssl_module

  $ make

  $ make install

  说明:装配命令(./configure ...)字符比较多,是借鉴网友的,以免编译时报错,有兴趣的可以查阅相关资料,看看各个参数是起什么作用。

  在这出了小状况:运行configure命令时总报错,提示我缺失cygpcre-1.dll文件,于是我在c:\cygwin64\bin下找:没有,又在c:\cygwin64目录下搜索:没有,最后上网检索,费了头天的劲,终于找到cygpcre-1.dll文件并下载了,能编译了,生成了nginx.exe。但运行nginx.exe时报错,版本不匹配,我晕!

  需要冷静,到客厅看电视剧一集多(换脑1小时),重新在c:\cygwin64目录下搜索 cygpcre-1.* ,搜出了cygpcre-1.dll.dbg 文件,这是调试信息文件,既然有它,就应该有......,难到是安装的cygwin出错了!

  果断重新安装cygwin的pcre相关的软件项目(包),再次搜索cygpcre-1.dll,就在c:\cygwin64\bin目录下!再编译nginx,成功!

  像cygwin这样的程序也会出错!真是毁人不倦啊!我终于明白,没有不出错的地方,只是概率有大小之别。以后得经常摇摇头,让脑子活泛点。

三、运行测试nginx

  按上面的步骤编译,应该在 c:\nginx 目录下生成文件:nginx.exe 和相关目录:conf (配置文件存放目录)、html(WWW根目录)、logs(日志存放目录)等。

  首先,进入dos命令行,再进入c:\nginx目录,运行 nginx.exe ,别忘了从目录c:\cygwin64\bin下拷贝相关的支撑库文件到c:\nginx目录下 。

  然后,打开浏览器,在地址栏输入 http://localhost(并回车) 测试www服务。
  OK!测试成功!

参见:

  win7下编译nginx和nginx-gridfs

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

  centos 7.0 nginx 1.7.9 安装过程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息