首页 > 系统相关 >[Nginx] 配置 SSL

[Nginx] 配置 SSL

时间:2024-10-19 15:48:43浏览次数:6  
标签:set 虚拟主机 SSL 配置 enabled sites Nginx proxy ssl

443 conf

sites-available 中新建一个文件,通过记事本进行配置:

server {
    # 网站的端口号
    listen 443 ssl;
    server_name zhangting.net;

    ssl_certificate /etc/nginx/cert/.pem;
    ssl_certificate_key /etc/nginx/cert/.key;

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

    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    # 网站的目录
    root /var/www/test;
    index index.html;

    # 静态文件服务
    location / {
        try_files $uri $uri/ =404;
    }

    # 处理 /api/ 路径的请求; 反向代理
    location /api/ {
        rewrite ^/api/(.*) /$1 break;
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

80 conf

找到 80 的配置,强制性转发到 443 端口:

server {
    # 网站的端口号
    listen 80;
    # 80 强制转发到 443
    rewrite ^(.*)$ https://$host$1;

    # 网站的目录
    # root /var/www/mu_zheng_5001;
    # index index.html;

    # 静态文件服务
    # location / {
    #     try_files $uri $uri/ =404;
    # }

    # 处理 /api/ 路径的请求; 反向代理
    # location /api/ {
    #     rewrite ^/api/(.*) /$1 break;
    #     proxy_pass http://127.0.0.1:3000;
    #     proxy_set_header Host $host;
    #     proxy_set_header X-Real-IP $remote_addr;
    #     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    #     proxy_set_header X-Forwarded-Proto $scheme;
    # }
}

重启 Nginx

cd /usr/sbin
nginx -s reload
nginx -s stop
nginx

遇到的问题

重启之后,80 会被强制性转发到 443,443 就是 https 请求了。

若服务器在本机,前端部署也在本机,而请求的接口前缀有 /api,且前端反向代理到本机地址,记得要在 Nginx 中配置 localtion /api {},否则出现 404 找不到资源。

sites-available 和 sites-enabled

在 Nginx 的配置中,sites-availablesites-enabled 是两个重要的目录,主要用于管理虚拟主机配置。它们的作用如下:

  1. sites-available:这个目录用于存放所有可用的虚拟主机配置文件。在这个目录中的每个配置文件都定义了一个虚拟主机,但并不是所有配置都会被启用。管理员可以在这里创建和修改虚拟主机配置,而不会立即影响到 Nginx 的运行。

  2. sites-enabled:这个目录只包含那些实际启用的虚拟主机配置文件。Nginx 会读取这个目录中的配置文件来加载相应的虚拟主机。通常情况下,管理员会在 sites-enabled 中放置指向 sites-available 中配置文件的符号链接(symlink),以便轻松启用或禁用特定的虚拟主机。

使用示例

要启用某个虚拟主机,可以在 sites-enabled 中创建一个指向 sites-available 中相应配置文件的符号链接:

sudo ln -s /etc/nginx/sites-available/443 /etc/nginx/sites-enabled/

如果想要禁用某个虚拟主机,只需删除 sites-enabled 中的符号链接:

sudo rm /etc/nginx/sites-enabled/443

这种结构使得虚拟主机的管理变得更加清晰和灵活,方便进行配置和调试。

标签:set,虚拟主机,SSL,配置,enabled,sites,Nginx,proxy,ssl
From: https://www.cnblogs.com/Himmelbleu/p/18475981

相关文章

  • phpstorm+phpstudy快速配置xdebug
    1.下载安装小皮面板2.下载安装phpstorm3.开启phpxdebug默认php环境是7.3.4,一般不需要洞这个,本文也是使用这个版本的php进行快速配置,如果PHP5.X版本的配置此方法可能不同4.配置php文件访问\phpstudy_pro\Extensions\php\php7.3.4nts\php.ini最下面会看到如下配置......
  • Docker 配置代理服务
    如果Docker主机安装在内网,需要通过代理下载镜像,那可以为Docker服务(守护进程)配置代理服务器。本文是学习官方代理配置文档的笔记。Docker服务可以通过daemon.json文件或dockerd命令的--http-proxy或者--https-proxy的参数来配置。推荐使用配置文件来配置。配置......
  • docker配置变量
    docker配置变量案例:dockerrun-itd-p8090:8080-p50000:50000--namejenkins_pri_v1--privileged=true-e"PATH=/usr/local/apache-maven-3.8.4/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"-v/data/jenkins:/v......
  • 晨控CK-FR102ANS与汇川AC系列PLC配置EtherNet/IP通讯连接手册
    晨控CK-FR102ANS与汇川AC系列PLC配置EtherNet/IP通讯连接手册产品说明:CK-FR102ANS是一款基于射频识别技术的高频双通道读写器,读写器工作频率为13.56MHZ,支持对I-CODE2、I-CODESLI等符合ISO15693国际标准协议格式标签的读取。高频双通道读写器支持标准工业通讯协议EtherNet......
  • 【MySQL】设置二进制日志文件自动过期,从根源上解决占满磁盘的问题:通过修改 binlog_exp
    引言MySQL的二进制日志(binlog)文件记录了数据库中所有更改的详细信息,包括但不限于对数据的插入、删除、更新,对表和数据库的创建、更改、删除等操作。每一次这样的操作都会在二进制日志中生成一个新的日志事件,并被写入到一个新的二进制日志文件中。因此,如果数据库的活动量较......
  • 软件配置管理活动在 GJB 5000B 评价中的应用
    1 组织机构、角色及职责依据体系要求文件建立两级配置控制委员会:公司配置控制委员会(公司级CCB)和项目配置控制委员会(项目级CCB)。配置管理组为项目级管理配置组(项目级CM)。公司级CCB负责审批产品库的配置项出入库及配置项的Ⅰ类变更。项目级CCB负责审批软件基线建立、受控......
  • 软件配置项测试
    一、软件黑盒测试,顾名思义就是把被测目标当做一个黑盒子,不需要了解对象内在的逻辑和特征,只针对对象的外部输入输出接口去设计的一种测试方式。黑盒测试简单的说就是通过外部输入获取外部输出,不考虑中间过程、目前常用的黑盒测试用例设计方法有好几种,需要根据各种应用场景分析......
  • Linux内核调优参数配置
    在Linux中,内核调优涉及到对系统内核的各种参数进行优化,以适应不同的工作负载和场景。这些参数主要存储在两个地方:一个是运行时动态可调的/proc/sys目录下的文件,另一个是持久化的配置文件/etc/sysctl.conf。1.内核调优配置文件/etc/sysctl.conf:这是最常用的内核参数配置文件,用......
  • Windows 10系统下 VS 2017配置PCL 1.8.1 成功版
    一、下载pcl-翻墙打开以下网站https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.8.11.将此页面下滑,找到下图两个文件下载2.下载的两个文件放到一个文件夹中2.打开下载好的以下文件PCL-1.8.1-AllInOne-msvc2017-win64.exe二、安装点云库1.点击下载的PC......
  • Kubernetes部署Prometheus并实现自定义指标HPA(安装、配置、实现全流程)
    1.安装kube-prometheusKube-Prometheus是一个开箱即用的监控解决方案,用于监控Kubernetes集群。它集成了Prometheus、Prometheus-Adapter、Alertmanager和一系列的导出器(exporters),使你能够轻松地收集和可视化集群中各种资源的监控数据。1.1克隆kube-prometheus仓库gitclon......