公司需求,需要在同一台机器上装两个不同位置的 nginx。what!我之前都是直接装在 /user/local/ 下的啊, 或者 yum install nginx 装在 /etc/nginx 啊,重庆IT外包公司,这怎么办
经过我的一番寻找终于看到的一些靠谱的答案。
./configure \ --prefix=你想要安装的目录 \ --sbin-path=/你想要安装的目录/nginx \ --conf-path=/你想要安装的目录/nginx.conf \ --pid-path=/你想要安装的目录/nginx.pid \ --with-http_ssl_module \ --with-pcre=/usr/local/pcre-8.38 \ --with-zlib=/usr/local/zlib-1.2.11 \ --with-openssl=/usr/local/openssl-1.0.1t make && make install test -d
我的理解
这是源码编译安装 ngixn,./configure 这一步是给 nginx 设置一些常量。而 --prefix 则是设置编译后到处 nginx 执行文件的地址。
现在网上虽然也有些教程但是也有很多已经老了,有些包找不到了。那我就把我这此安装的步骤分享出来
nginx 安装到自定义位置
先安装 pcre
cd /usr/local/ # 下载 wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz # 解压 tar -zxvf pcre-8.38.tar.gz cd pcre-8.38 ./configure # 编译 make && make install # 记住这个安装目录一会儿会用到 # /usr/local/pcre-8.38
其次是 zlib
cd /usr/local/ # 下载 wget http://www.zlib.net/zlib-1.2.11.tar.gz # 解压 tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure # 编译 make && make install # 记住这个安装目录一会儿会用到 # /usr/local/zlib-1.2.11
ssl 这个不用编译,简单
cd /usr/local/ wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz tar -zxvf openssl-1.0.1t.tar.gz # 记住这个安装目录一会儿会用到 # /usr/local/openssl-1.0.1t
现在安装 Nginx
cd /usr/local #下载解压 wget http://nginx.org/download/nginx-1.4.2.tar.gz tar -zxvf nginx-1.4.2.tar.gz # 注意:这只是源码 cd nginx-1.4.2 # 设置常量 ./configure \ --prefix=/自定义位置/ \ --sbin-path=/自定义位置/nginx \ --conf-path=/自定义位置/nginx.conf \ --pid-path=/自定义位置/nginx.pid \ --with-http_ssl_module \ --with-pcre=/usr/local/pcre-8.38 \ # 刚刚安装的 pcre 的位置 --with-zlib=/usr/local/zlib-1.2.11 \ # 刚刚安装的 zlib 的位置 --with-openssl=/usr/local/openssl-1.0.1t #刚刚安装的 openssl 的位置 # 编译 make && make install # 重要:如果不执行则不会创建真正的 nginx 文件 test -d