一、安装前准备
确认是否安装gcc g++开发类库
安装make:
yum -y install gcc automake autoconf libtool make
安装g++:
yum install gcc gcc-c++
二、安装
1、确定安装目录
选择安装目录,一般选择 usr/local/src文件夹下
cd /usr/local
2、安装PCRE库
首先访问下载PCRE的版本列表,会在我们的安装目录下载一个index.html,在winScp中打开我们可以看到版本列表
cd /usr/local
wget ftp://ftp.pcre.org/pub/pcre/
我们选择版本为pcre-8.45.tar.gz
cd /usr/local
wget ftp://ftp.pcre.org:21/pub/pcre/pcre-8.45.tar.gz
tar -zxvf pcre-8.45.tar.gz
cd pcre-8.45
./configure
make
make install
3、 安装zlib库
安装前我们可以首先访问http://zlib.net网站查看到当前的最新版本,我们选择zlib-1.2.11.tar.gz
cd /usr/local
wget http://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
4、安装openssl
cd /usr/local
wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz
tar -zxvf openssl-1.0.1t.tar.gz
cd /usr/local/openssl-1.0.1t
./config
make
make install
5、安装nginx
安装前我们可以访问http://nginx.org查看当前最新版本,我们一般选择稳定版(stable version),我们选择nginx-1.16.0.tar.gz版本,安装完后会自动在安装目录同级目录生成 nginx 目录。
安装步骤:
cd /usr/local
wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar -zxvf nginx-1.16.0.tar.gz
cd nginx-1.16.0
./configure --with-http_ssl_module --with-openssl=/usr/local/openssl-1.0.1t
make
make install
三、生成 SSL 证书配置 HTTPS
第一步: 生成 RSA 密钥
cd /usr/local/nginx/conf
openssl genrsa -des3 -out server.key 1024 // 使用1024位密钥生成 server.key,回车后会让我们输入两次确认自定义密码
第二步: 生成证书请求
cd /usr/local/nginx/conf
openssl req -new -key server.key -out server.csr
之后会让输入一些证书信息
第三步:创建不需要输入密码的 RSA 证书, 否则每次 reload、restart 都要输入密码
cd /usr/local/nginx/conf
openssl rsa -in server.key -out server.pass.key
回车后输入之前的密码确认。
第四步:签发证书
cd /usr/local/nginx/conf
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
回车后输入之前的密码确认 。
三、启动前准备
因为nginx默认使用80端口,可能和我们的其他服务端口冲突,所以我们可以修改一下nginx端口号
修改/usr/local/nginx/conf/nginx.conf文件,将其中的端口号以及IP修改为我们要使用的端口以及我们的服务器IP
同时如果我们使用的服务器是阿里云等云服务器的话还需要配置实例的安全组规则,将我们的端口号开放。
四、nginx启动
进入nginx安装目录,进入sbin文件夹执行./nginx命令即可
cd /usr/local/nginx/sbin
./nginx
使用netstat -ntpl命令查看是否启动成功
netstat -ntpl
五、nginx停止
1、命令行重启
./nginx -s reload
2、强制停止
pkill -9 nginx
六、浏览器访问效果
访问地址:服务器域名或IP 加上nginx配置的端口号
六、设置 Nginx 服务为系统服务
在 /etc/init.d 文件夹下创建 nginx 文件
vim /etc/init.d/nginx
写入如下配置:
#!/bin/bash
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME
test -x $DAEMON || exit 0
d_start(){
$DAEMON || echo -n " already running"
}
d_stop() {
$DAEMON -s quit || echo -n " not running"
}
d_reload() {
$DAEMON -s reload || echo -n " counld not reload"
}
case "$1" in
start)
echo -n "Starting $DESC:$NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC:$NAME"
d_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 2
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
exit 3
;;
esac
exit 0
保存后执行脚本权限命令
chmod +x /etc/init.d/nginx
systemctl unmask nginx.service
设置开机启动
chkconfig --add nginx
chkconfig nginx on
相关命令:
service nginx start // 启动
service nginx stop // 停止
service nginx restart // 重启