Linux部署Nginx并配置https

1. 下载nginx安装包

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

2. 解压压缩包

tar -zvxf nginx-1.21.6.tar.gz

3. 初始化configure

#配置configure --prefix 代表安装的路径,--with-http_ssl_module 安装ssl,--with-http_stub_status_module查看nginx的客户端状态
./configure --prefix=/usr/local/nginx-1.20.2 --with-http_ssl_module --with-http_stub_status_module

如果缺少依赖就安装依赖包

yum -y install gcc gcc-c++ autoconf automake make
yum -y install openssl openssl-devel

4. 编译安装

#编译安装nginx
make & make install 

5. 开启ssl

从阿里云下载免费ssl证书

vim /usr/local/nginx/conf/nginx.conf

在结尾处新增一行

http {
  server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm index.php;
        }
  }
  #在这儿新增
  include  /usr/local/nginx/conf/vhost/*.conf;
}

新建ssl.conf配置文件,文件路径/usr/local/nginx/conf/vhost/ssl.conf

文件内容

server {
    listen 80;
    server_name 你的域名;
    rewrite ^(.*)$ https://${server_name}$1 permanent; 
}


server 
   {
        # 基于域名的虚拟主机
        listen       443 default_server ssl;
        
        #listen 443;
        server_name 你的域名;
        ssl_certificate      /home/nginx/ssl/证书文件.pem;
        ssl_certificate_key  /home/nginx/ssl/证书文件.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
}

6. nginx无法访问https

  1. 排查服务器安全组规则是否开启443端口

  2. 排查nginx是否开启443端口

    netstat -anp | grep nginx
    

    如果没有开启,就检查nginx是否安装ssl模块,以及证书位置信息

  3. 排查服务器防火墙443端口状态

    firewall-cmd --zone=public --query-port=443/tcp
    

    yes代表开启,no代表未开启

    服务器开启443端口

    firewall-cmd --zone=public --add-port=443/tcp --permanent
    

    重启防火墙使其生效

    firewall-cmd --reload
    

7. 常用命令

启动nginx

/usr/local/nginx/sbin/nginx

关闭nginx

pkill -9 nginx

重启nginx,重新加载配置文件

/usr/local/nginx/sbin/nginx -s reload

校验nginx配置文件

/usr/local/nginx/sbin/nginx -t

查看nginx进程

ps -ef|grep nginx

查看nginx端口

netstat -anp | grep nginx
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RedEric

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值