`
miraclerz
  • 浏览: 99923 次
社区版块
存档分类
最新评论

nginx windows/linux cdn 下配置https

 
阅读更多

1. 安装Openssl

  下载地址:http://slproweb.com/products/Win32OpenSSL.html (根据系统选择32位或者64位版本下载安装)。

2.在环境变量中添加环境变量

    变量名: OPENSSL_HOME            变量值:D:\OpenSSL-Win64\bin;        (变量值为openssl安装位置)

    在path变量结尾添加如下 : %OPENSSL_HOME%;

 

3.(1) 首先在 nginx安装目录中创建ssl文件夹用于存放证书。比如我的文件目录为 C:\wnmp\nginx\ssl

     以管理员身份进入命令行模式,进入ssl文件夹。 命令为: cd  c:/wnmp/nginx/ssl

  (2) 创建私钥

     在命令行中执行命令: openssl genrsa -des3 -out lee.key 1024     (lee文件名可以自定义)

输入密码后,再次重复输入确认密码。记住此密码,后面会用到。

  (3)创建csr证书

     在命令行中执行命令:  openssl req -new -key lee.key -out lee.csr    (key文件为刚才生成的文件,lee为自定义文件名)

 

执行上述命令后,需要输入信息。输入的信息中最重要的为 Common Name,这里输入的域名即为我们要使用https访问的域名,如果多个子域名,可以输入如:*.baidu.com

       以上步骤完成后,ssl文件夹内出现两个文件

 (4)去除密码。

     在加载SSL支持的Nginx并使用上述私钥时除去必须的口令,否则会在启动nginx的时候需要输入密码。

     复制lee.key并重命名为lee.key.org 

     可以使用此命令行,也可以使用鼠标操作     copy lee.key lee.key.org

     去除口令,在命令行中执行此命令:  openssl rsa -in lee.key.org -out lee.key  (lee为自定义文件名)

 (5)生成crt证书

     在命令行中执行此命令: openssl x509 -req -days 365 -in lee.csr -signkey lee.key -out lee.crt  (lee为自定义文件名)

证书生成完毕,ssl文件夹中一共生成如下4个文件,我们需要使用到的是lee.crt和lee.key。

5. 修改nginx.conf文件

    nginx.conf文件位于:C:\wnmp\nginx\conf

    找到该文件中如下代码的位置进行修改: 保证本机的端口不被占用 443 和 80

 server {

                    listen 443;

    server_name a.baidu.com;

    ssl on;

    root html;

    index index.html index.htm;

 

    ssl_certificate      /etc/nginx/ssl/aa.pem;

    ssl_certificate_key   /etc/nginx/ssl/aa.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;

    ssl_prefer_server_ciphers on;

 

 

      location ^~ /user/ {

            add_header 'Access-Control-Allow-Origin' *;

            add_header 'Access-Control-Allow-Credentials' 'true';

            add_header 'Access-Control-Allow-Methods' *;       

            proxy_pass http://192.168.1.188:9000;

            proxy_http_version 1.1;

            proxy_set_header Upgrade $http_upgrade;

            proxy_set_header Connection "upgrade";

            proxy_set_header Cookie $http_cookie;

        }

     }

 linux 下也基本一样

 

如果需要主页由http直接跳转为 hppts 

而在http的转发里加上

# 首页重定向https

location =/ {

       rewrite ^(.*) https://$server_name$1 permanent;      

}

 

/sbin/iptables -L -n   

查看防火墙

 

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

开启防火墙443端口

 

 特别要注意的是443端口有没有开,而在阿里云的服务器,不止服务器防火墙要开而且在阿里云的控制台上也要把443端口允许了才行。

如果有用cdn那么也要在cdn上开启https,并把证书.crt,和秘钥.key传到cdn上,生效后就可以访问了

 

今天 在刷新cdn缓存时一直发现没有刷到最新服务器上的页面,最后检查发现原来阿里云上cdn有个‘协议跟随回源’ 这个设置要开启才行,不然就算刷新回源去服务器上抓取数据时也是走http,这个设置后就会走https了,这才能拿到正确的数据。

 

阿里云上有个ca证书,免费的,每个账号可以添加20个免费证书,单域名。

 

 

 

0
0
分享到:
评论

相关推荐

    IIS、Apache、Tomcat、Nginx、CDN,它们之间有何区别

    IIS(Internet Information Services)、Apache、Tomcat、Nginx和CDN(内容分发网络)是IT领域中常见的几个技术名词,它们各有各的用途和特点。 IIS是微软公司开发的一个Web服务器软件,它是Windows操作系统的一个...

    nginx-rtmp-module

    在大多数 Linux 发行版中,可以通过包管理器(如 apt-get 或 yum)轻松安装 Nginx。例如,在 Ubuntu 上: ``` sudo apt-get update sudo apt-get install nginx ``` 2. 安装 Nginx-RTMP-Module: 首先,克隆...

    nginx-1.18.0.zip

    Nginx的核心配置文件是`nginx.conf`,位于安装目录的`conf`子目录中。这个文件包含了一系列的`server`块,每个`server`块定义了一个监听特定端口的服务器实例。 - **基本配置**:如设置监听端口、服务器名称、根...

    业界最有价值Nginx反向代理实战博文荟萃

    Nginx支持在多种操作系统上运行,包括FreeBSD、Linux、Windows以及Mac OS X,这使得它能够在不同的环境下部署,进而获得了广泛用户的认可。Nginx不只是一款HTTP和反向代理服务器软件,它还支持IMAP/POP3/SMTP等协议...

    nginx教程.doc

    1. **Nginx安装**:讲解了在Linux(如Ubuntu、CentOS)和Windows系统上安装Nginx的步骤,包括源码编译安装和使用包管理器安装。 2. **Nginx架构**:介绍Nginx的事件模型和多进程模型,以及如何利用这些特性实现高...

    OBS+NGINX 实现rtmp直播推流.zip

    首先,OBS是一款强大的免费开源软件,适用于Windows、Mac和Linux平台,它支持多种视频源的捕获,如桌面屏幕、摄像头、音频输入等,可以方便地进行视频录制和直播推流。要使用OBS进行rtmp直播推流,你需要设置推流...

    Nginx HTTP Server - Adopt Nginx for your web applications to make the most of your infrastructure and serve pages faster than ever

    2. **基本配置**:Nginx的核心配置文件位于`/etc/nginx/nginx.conf`(Linux系统下)。该文件定义了Nginx的整体运行环境,包括监听端口、服务器块(server blocks)等。 3. **服务器块(Server Block)**:每个服务器块...

    WEB服务器安装配置完全手册

    3. 配置:配置文件通常为`nginx.conf`,可设置服务器块、反向代理、负载均衡等高级特性。 4. 启动:使用命令(如`nginx -s start`或`systemctl start nginx`)启动服务。 四、Web服务器配置基础 1. 文档根目录:...

    linux-宝塔Linux面板简单好用的服务器运维面板

    3. **跨平台**:宝塔面板不仅适用于Linux系统,还支持Windows服务器,满足不同环境的需求。 4. **扩展性强**:拥有丰富的插件市场,用户可以根据需求安装各种运维工具,如SSL证书自动续签、CDN加速、日志查看等。 ...

    ImageForward(图片转发服务)

    这个服务支持两种操作系统平台:Linux和Windows,确保了在不同环境下的兼容性和灵活性。 ### 1. 服务概述 ImageForward的核心在于提供一个中间层,将用户请求的图片地址重定向到实际的图片存储位置。这种设计模式...

    OpenResty的现状、趋势、使用及学习方法1

    最后,OpenResty同时支持Linux和Windows平台,这在考虑到中小企业用户的操作系统偏好时显得尤为重要。 在学习OpenResty的过程中,理解其核心组件Nginx、LuaJIT和Redis等的工作原理至关重要。Nginx作为基础的反向...

    最新H5手机微商城运营源码简约轻量版对接最新Z支付个人免签接口带搭建教程.txt

    - 搭建服务器环境(Linux或Windows Server均可),确保安装了Apache/Nginx等Web服务器软件。 - 安装MySQL数据库服务。 - 配置PHP环境(推荐使用7.x版本以上)。 2. **源码下载与解压**: - 下载地址:...

    Drupal安装指南

    - **操作系统**:支持*nix(如Linux、Unix)、macOS以及Windows系统。 - **Web服务器**:推荐使用Apache 1.3或更高版本、Apache 2.x系列、Microsoft IIS等。特别是Apache,它是最常用的Web服务器软件之一,在Web早期...

    架设mp3服务器

    1. **Web服务器**:如Apache或Nginx,它们是HTTP/HTTPS协议的实现,负责接收和响应客户端请求。 2. **媒体服务器**:如Icecast或Shoutcast,它们专门处理音频流媒体传输。这些软件可以与Web服务器结合,提供MP3流...

    梦想网络自己当电脑开网站空间详细教程(语音)

    此外,还需要安装服务器版的操作系统,如Windows Server或Linux(例如Ubuntu Server)。 2. **服务器操作系统**:Linux系统是常见的选择,因为它们通常更稳定且资源消耗较低。例如,Apache或Nginx可以作为Web服务器...

    非集群版DEMO使用说明1

    12. **客户端DEMO使用**:提供Windows和Linux版本的DEMO,客户端可以设置服务器IP、用户ID和房间ID进行发布和观看。发布者可以调整音视频的分辨率、码率等参数,通过配置文件AVClient.ini来实现。 在使用DEMO时,...

    网站服务器创建.ppt

    2. **操作系统安装**:服务器通常选用Linux(如Ubuntu、CentOS)或Windows Server作为操作系统。Linux以其开源、稳定和安全性被广泛用于Web服务器,而Windows Server则适合需要.NET框架或Active Directory的企业环境...

    自定义修改的直播服务器

    对于Windows平台,可能需要注意的是兼容性问题,因为有些开源直播服务器如Nginx-RTMP或Wowza默认是为Linux设计的,但在Windows上运行可能需要额外的配置或第三方工具。 在进行部署时,需要考虑服务器的硬件配置,如...

    Magento 安装教程

    1. **操作系统**:Linux、Windows或macOS。 2. **Web服务器**:Apache或Nginx。 3. **PHP版本**:7.4或更高(推荐7.4-8.0)。 4. **数据库**:MySQL 5.6 或更高版本。 5. **内存**:至少 2GB RAM。 6. **存储**:...

Global site tag (gtag.js) - Google Analytics