centos 部署nginx 并配置https

centos版本:centos 7.8 (最好不要用8,8的很多用法和7相差很大)

一.安装nginx

1。下载Nginx安装包:首先,访问Nginx的官方网站(https://nginx.org/)或您选择的镜像站点,找到适用于您的系统的Nginx安装包的下载链接。在终端中使用`wget`或`curl`来下载安装包。以下是一个示例:

nginx 官网:https://nginx.org/en/download.html

powershell 复制代码
wget https://nginx.org/download/nginx-1.24.0.tar.gz

请注意,上述链接中的版本号(1.24.0)可能会更改。请访问Nginx官方网站以获取最新版本的下载链接。

2解压安装包:使用以下命令解压下载的Nginx安装包:

powershell 复制代码
tar -zxvf nginx-1.24.0.tar.gz

3.安装依赖项:在编译和安装Nginx之前,确保您的系统上已安装了必要的编译工具和依赖项。可以使用以下命令安装一些常见的依赖项:

powershell 复制代码
   sudo yum install gcc make openssl-devel pcre-devel zlib-devel

4.配置和编译Nginx:进入解压后的Nginx目录,并运行以下命令来配置和编译Nginx:
在这里插入代码片# 这里的版本号应该与您下载的版本号匹配

powershell 复制代码
cd nginx-1.24.0 
  ./configure
  make

5.安装Nginx:编译完成后,运行以下命令来安装Nginx:

powershell 复制代码
sudo make install
  1. Nginx将被安装到默认位置,通常为/usr/local/nginx/。
    启动Nginx:使用以下命令启动Nginx:
powershell 复制代码
  /usr/local/nginx/sbin/nginx

您可以使用/usr/local/nginx/sbin/nginx -s stop来停止Nginx

/usr/local/nginx/sbin/nginx -s reload来重新加载配置。

验证安装:验证Nginx是否成功安装,您可以通过访问服务器的公共IP地址或域名来检查Nginx的欢迎页面。

二.使用https

1.如果想使用https,还需要安装http_ssl_module模块

powershell 复制代码
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
  make

在替换原有的nginx,需要先停掉原来的nginx程序,或者直接ps -elf | grep nginx查到相关程序,直接kill -9掉。

powershell 复制代码
  cp ./objs/nginx /usr/local/nginx/sbin/

这里要注意,做完操作后,nginx本来的安装位置的你写的配置文件会到usr/local/nginx下面,你原先解压的nginx会失效

原有解压位置的不生效了

而且在usr/local下也会生成一部分文件,不用管

进入nginx下面,所有生效的nginx配置在这里

2.申请证书

这样就安装好了ssl模块

证书可以去阿里云下载,申请个域名,每个用户每年可以有20个免费证书

上传到nginx目录下

新建 mkdir cert

上传证书 rz

在配置文件最后一行新增

include /usr/local/nginx/conf/conf.d/*.conf;

新建conf.d

powershell 复制代码
mkdir conf.d

在conf.d下新建配置文件

powershell 复制代码
 server {
       listen       443 ssl;
       server_name  localhost;

       ssl_certificate      /usr/local/nginx/cert/ck.chenkangck.top.pem;
       ssl_certificate_key  /usr/local/nginx/cert/ck.chenkangck.top.key;

       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  5m;

       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;

       location / {
            root   html;
            index  index.html index.htm;
        }
    }
powershell 复制代码
./nginx -s reload

在浏览器访问https

相关推荐
Lsetea10 小时前
OpenSSL verify报unhandled critical extension:error 34与关键扩展排查
运维·https·ssl证书·openssl·证书链
吴声子夜歌15 小时前
Nginx应用与运维——Nginx集群负载与配置管理(二)
运维·nginx
cpolar技术支持15 小时前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
Lsetea17 小时前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
吴声子夜歌19 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(一)
运维·nginx·kubernetes
螺蛳粉 螺蛳粉20 小时前
第一篇:Keepalived 高可用实战:VIP 漂移与 Nginx 主备切换完整指南
运维·nginx·负载均衡·keepalived·高可用
吴声子夜歌21 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(三)
运维·nginx·kubernetes
灯澜忆梦21 小时前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
吴声子夜歌1 天前
Nginx应用与运维——Nginx在Kubernetes中的应用(二)
运维·nginx·kubernetes
Wang's Blog1 天前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx