安装之前先保证linux有gcc和g++,因为很多东西都需要这两个库,如果没有,运行以下命令
yum install -y gcc gcc-c++
一般linux里面都会有,如果已经存在,它会报已经存在无法安装
安装依赖
1. 安装nginx前,我们需要安装3个依赖包zlib、pcre、openssl(此需要root权限和外网)
yum install -y zlib pcre openssl
2.如果上面没有无法yum,那就外部下载zlib、pcre、openssl的依赖包再安装,如果yum成功,请跳过此步
下载pcre依赖包 http://ftp.pcre.org/pub/pcre/http://ftp.pcre.org/pub/pcre/
下载openssl依赖包 Index of /opensslhttp://distfiles.macports.org/openssl/下载zlib依赖包 Index of /fossilshttp://www.zlib.net/fossils/
下载nginx
nginx: downloadhttp://nginx.org/en/download.html
一、安装nginx
方法1
--with-pcre, --with-zlib, --with-openssl依赖是解压路径,nginx会自动引入依赖
./configure --prefix=/home/nginx/nginx --with-pcre=/home/pcre-8.36 --with-zlib=/home/zlib-1.2.3 --with-openssl=/home/openssl-1.0.1e
方法2 (不推荐)
依赖全部安装好后,在nginx安装时 --with-pcre, --with-zlib, --with-openssl依赖是安装路径
安装pcre:
#需要root权限
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make
make install
#不需要root权限,安装到自身目录下不需要root权限
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure --prefix=/home/pcre
make
make install
安装openssl:
#需要root权限
cd /home/nginx/
tar -zxvf openssl-1.0.1e.tar.gz
cd openssl-1.0.1e
./config
make
make install
#不需要root权限 同理
cd /home/nginx/
tar -zxvf openssl-1.0.1e.tar.gz
cd openssl-1.0.1e
./config --prefix=/home/openssl
make
make install
安装zlib
#root权限
cd /home/nginx/
tar -zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
#CFLAGS="-O3 -fPIC" ./configure
./configure
make
make install
#不需要root权限
cd /home/nginx/
tar -zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure --prefix=/home/zlib
make
make install
安装nginx
不用root权限
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
./configure --prefix=/home/nginx //--prefix=要安装的目录
make
make install
--with-pcre,--with-zlib, --with-openssl会报错,默认是加上
系统有pcre,zlib,openssl的情况
./configure --prefix=/home/nginx/nginx
自己安装pcre,zlib,openssl的情况 (安装路径)
./configure --prefix=/home/nginx/nginx --with-pcre=/home/pcre --with-zlib=/home/zlib --with-openssl=/home/openssl
make时报错
make -f objs/Makefile
make[1]: Entering directory `/opt/nginx-1.18.0'
cd /usr/local \
&& if [ -f Makefile ]; then make clean; fi \
&& ./config --prefix=/usr/local/.openssl no-shared no-threads \
&& make \
&& make install_sw LIBDIR=lib
/bin/sh: line 2: ./config: No such file or directory
make[1]: *** [/usr/local/.openssl/include/openssl/ssl.h] Error 127
make[1]: Leaving directory `/opt/nginx-1.18.0'
make: *** [build] Error 2
没有.openssl路径的动态库,是因为在auto/lib/openssl/conf 的配置中会添加.openssl的后缀,按照步骤操作即可
启动
nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)
没有root权限,nginx只能选择1024以上的端口, 比如8089 8080 或者root给权限
./nginx -v 查看版本,检测是否安装成功
二.安装redis
tar -zvxf redis-5.0.7.tar.gz
make
make PREFIX=/usr/local/redis install