部署新环境:编译nginx1.0.6

新项目,要上服务器,配置代理服务器,由于一直使用的是nginx来做代理、负载,这次也如此,配置如下:

1.软件准备

nginx:这里选择stable版本

http://nginx.org/en/download.html

wget http://nginx.org/download/nginx-1.0.6.tar.gz

pcre:rewrite所要使用的第三方模块

http://www.pcre.org/

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.13.zip

openssl:https协议所要使用的模块

http://www.openssl.org/source/

wget http://www.openssl.org/source/openssl-1.0.0e.tar.gz

uploadprogress:由于使用到nginx来做文件上传进度条,所以需要此模块

http://wiki.nginx.org/HttpUploadProgressModule

https://github.com/masterzen/nginx-upload-progress-module/downloads

upload:上传模块

https://github.com/vkholodkov/nginx-upload-module/downloads

2. 将下载的文件解压,为便于管理,都放到nginx目录下,目录列表:

nginx-1.0.6.tar.gz

pcre-8.13.zip

openssl-1.0.0e.tar.gz

vkholodkov-nginx-upload-module-2.2.0-0-g2ec4e4f.tar.gz

masterzen-nginx-upload-progress-module-v0.8.3-0-gc7c663f.tar.gz

3. 配置、编译、安装nginx

1>切换到root用户

sudo -s -H

2>配置

./configure --prefix=/opt/nginx-1.0.6 --with-openssl=../openssl-1.0.0e --with-pcre=../pcre-8.13 --add-module=../masterzen-nginx-upload-progress-module-c7c663f --add-module=../vkholodkov-nginx-upload-module-2ec4e4f

部分配置显示如下:

configuring additional modules

adding module in ../masterzen-nginx-upload-progress-module-c7c663f

 + ngx_http_uploadprogress_module was configured

adding module in ../vkholodkov-nginx-upload-module-2ec4e4f

 + ngx_http_upload_module was configured

checking for system md library ... not found

checking for system md5 library ... not found

checking for OpenSSL md5 crypto library ... found

checking for sha1 in system md library ... not found

checking for OpenSSL sha1 crypto library ... found

checking for zlib library ... found

creating objs/Makefile

Configuration summary

  + using PCRE library: ../pcre-8.13

  + using OpenSSL library: ../openssl-1.0.0e

  + md5: using system crypto library

  + sha1: using system crypto library

  + using system zlib library

  nginx path prefix: "/opt/nginx-1.0.6"

  nginx binary file: "/opt/nginx-1.0.6/sbin/nginx"

  nginx configuration prefix: "/opt/nginx-1.0.6/conf"

  nginx configuration file: "/opt/nginx-1.0.6/conf/nginx.conf"

  nginx pid file: "/opt/nginx-1.0.6/logs/nginx.pid"

  nginx error log file: "/opt/nginx-1.0.6/logs/error.log"

  nginx http access log file: "/opt/nginx-1.0.6/logs/access.log"

  nginx http client request body temporary files: "client_body_temp"

  nginx http proxy temporary files: "proxy_temp"

  nginx http fastcgi temporary files: "fastcgi_temp"

  nginx http uwsgi temporary files: "uwsgi_temp"

  nginx http scgi temporary files: "scgi_temp"

其中:zlib md5 sha1包都使用系统自带的,若系统没有,可下载安装

aptitude search sha1

aptitude search md5

找到合适的包,进行安装即可

3> make

4> make install

5> 到nginx安装目录,查看nginx配置

   /opt/nginx-1.0.6/sbin/nginx -V

P.S.

--with-pcre=DIR - 指定 PCRE 库的源代码的路径。

--with-openssl=DIR - Set path to OpenSSL library sources
--with-openssl-opt=OPTIONS - Set additional options for OpenSSL building

--add-module=PATH - Add in a third-party module found in directory PATH 

可参考 ./configuare --help查看配置参数

6> 查看nginx安装成功

/opt/nginx-1.0.6/sbin/nginx -t

nginx: the configuration file /opt/nginx-1.0.6/conf/nginx.conf syntax is ok

nginx: configuration file /opt/nginx-1.0.6/conf/nginx.conf test is successful

由此安装成功!

7> 启动nginx

/opt/nginx-1.0.6/sbin/nginx -c /opt/nginx-1.0.6/conf/nginx.conf

这里就可以配置自己的nginx配置文件来启动!

猜你喜欢

转载自genggeng.iteye.com/blog/1182062