linux 安装nginx


从源码安装nginx(centosOS ubuntu)

1.在工作目录里面下载安装依赖

//centerOS
yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
或者
//ubuntu
apt-get install libpcre3 libpcre3-dev zlib1g-dev build-essential gcc

//PCRE 作用是让 Nginx 支持 Rewrite 功能。
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

tar zxvf pcre-8.35.tar.gz

cd pcre-8.35 && ./configure

make && make install

pcre-config --version

2.在工作目录里面安装nginx

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

tar zxvf nginx-1.6.2.tar.gz

cd nginx-1.6.2

./configure --prefix=/你希望存放的目录/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35

make && make install

//启动
nginx/sbin/nginx

3.不出意外应该是成功的,则不需要往后看,后面是错误记录

make出错,多半是Makefile文件问题

在nginx的解压路径下,运行:cd objs

编辑Makefile文件,删除其中的-Werror

要是还是出错,则需要看具体是哪一行报错,一般修改对应文件,将其注释即可

比如:

src/os/unix/ngx_user.c: In function ‘ngx_libc_crypt’:
src/os/unix/ngx_user.c:36:7: error: ‘struct crypt_data’ has no member named ‘current_salt’
cd.current_salt[0] = ~salt[0];
^
make[1]: *** [objs/Makefile:774: objs/src/os/unix/ngx_user.o] Error 1
make[1]: Leaving directory '/root/nginx-1.10.1'
make: *** [Makefile:8: build] Error 2

可以修改 src/os/unix/ngx_user.c文件 根据提示行号找到 cd.current_salt[0] = ~salt[0];注释。