CentOS 7.4 安装 Nginx(配置单域名多HTTPS主机)

1. 下载 openssl 并解压,并将解压后的文件夹改名为 openssl-111。

wget https://www.openssl.org/source/openssl-1.1.1-pre8.tar.gz

tar -zxvf openssl-1.1.1-pre8.tar.gz

mv openssl-1.1.1-pre8 openssl-111

注意:这个 openssl 解压即可,不要安装。

2. 下载 nginx 并解压,并将解压后的文件夹改名为 nginx-114。

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

tar -zxvf nginx-1.14.0.tar.gz

mv nginx-1.14.0 nginx-114

3. 安装 pcre 和 zlib 库,否则安装是会出错。

yum -y install pcre-devel zlib-devel

4. 进入 nginx-114 目录后输入如下命令,进行设置、编译、安装。

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=./openssl-1.0.1e --with-openssl-opt="enable-tlsext"

make

make install

5. 如果仅仅出现 make[1]: Leaving directory `/root/runenv/nginx-114' 这一行错误或者说到这行后看不到后续日志,可忽略。

6. 通过如下过程判断 nginx 是否正常安装。

首先,由于 prefix=/usr/local/nginx,看 /usr/local/ 目录下是否有 nginx 目录?

接着,如果目录存在,看 nginx 能否正常启动?

最后,如果 nginx 启动成功,通过 http://IP 看是否能正常展示 Welcome to nginx! 网页?

如果都可以,则Nginx 安装成功。

7. 编辑 /lib/systemd/system/nginx.service 文件,录入如下内容,以配置系统服务让 nginx 开机启动。

[Unit] #服务说明

Description=nginx - high performance web server #服务描述

Documentation=http://nginx.org/en/docs/ #服务文档

#启动顺序,本服务在这些服务启动前启动

#Before= 

#启动顺序,本服务在这些服务启动后启

After=network.target network-online.target remote-fs.target nss-lookup.target

#推荐使用。这个单元启动了,其需要的单元也会被启动;其需要的单元停止了,对本单元无影响。

Wants=network-online.target 

[Service] #服务运行参数设置

Type=forking #后台运行

PIDFile=/run/nginx.pid #用于 systemd 跟踪服务主进程

#指定启动单元的命令或脚本,ExecStartPre和ExecStartPost指定在ExecStart之前或之后用户自定义执行的脚本

ExecStartPre=/usr/bin/rm -f /run/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t

ExecStart=/usr/local/nginx/sbin/nginx #启动

ExecReload=/bin/kill -s HUP $MAINPID #重启

ExecStop=/bin/kill -s QUIT $MAINPID #停止

KillSignal=SIGQUIT

TimeoutStopSec=5

KillMode=process

PrivateTmp=true #给服务分配独立的临时空间

[Install] #运行级别下服务安装的相关配置

WantedBy=multi-user.target #多用户

8. 通过如下命令设置开机启动或停止开机启动。

systemctl enable nginx.service

systemctl disable nginx.service

9. 通过如下命令启动、重启、停止 nginx服务。

systemctl start nginx.service

systemctl restart nginx.service

systemctl stop nginx.service

10. 通过 /usr/local/nginx/sbin/nginx -V 命令,如果出现 TLS SNI support enabled,则表示可以同一个IP配置多个HTTPS主机了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值