• 55939

    文章

  • 558

    评论

  • 46

    友链

  • 最近新加了换肤功能,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

Nginx配置https&升级http2,开启多路复用

695856371Web网页设计师②群 | 喜欢本站的朋友可以收藏本站,或者加入我们大家一起来交流技术!

欢迎来到梁钟霖个人博客网站。本个人博客网站提供最新的站长新闻,各种互联网资讯。 还提供个人博客模板,最新最全的java教程,java面试题。在此我将尽我最大所能将此个人博客网站做的最好! 谢谢大家,愿大家一起进步!

编译环境准备:(已经安装就无需重复操作)针对CentOS其他请百度
yum -y install gcc-c++ zlib zlib-devel openssl openssl-devel pcre pcre-devel
1:安装 ssl
mkdir /data0/ssl
cd /data0/ssl
解压并进入
cd /data0/ssl/openssl-1.0.1t
./config
make
make install
2.安装nginx
    2.1.下载Nginx安装包
        下载地址:http://nginx.org/
    2.2.解压安装包到指定位置
        如:/data/nginx-http2.0/
这里是吧解压出来的文件夹修改名字 用mv命令
    2.3.预编译
    2.4.到解压的目录中
        cd /data0/nginx/
    2.5.预编译
     ./configure --sbin-path=/data0/nginx --with-stream \--conf-path=/data0/nginx/conf/nginx.conf \
--with-http_ssl_module \
--with-http_v2_module \
--with-openssl=/data0/ssl/openssl-1.0.1t
        其中 /data0/ssl/openssl-1.0.1t 为你刚刚安装的ssl路径
        /data0/nginx/conf/nginx.conf 为conf的路径
        当执行上面语句,出现./configure: error: SSL modules require the OpenSSL library.
       用 yum -y install openssl openssl-devel
    2.6.编译和安装
make && make install
2.7 配置key
在切换到conf目录下
mkdir cert
将 证书key和pem复制进来(证书在阿里云上下载,有免费的)
2.8需改nginx.conf 配置
#ssl
        server {
        listen 443 ssl http2 default_server;
        server_name liangzl.com www.liangzl.com;
        ssl on;
        root html;
        index index.html index.htm;
        ssl_certificate cert/214029054280012.pem;
        ssl_certificate_key cert/214029054280012.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 / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
                    }
        }

        #将http强转到https
      server {
        listen 80;
        server_name xxxx.com www.xxxx.com;
        rewrite ^ https://$http_host$request_uri? permanent; 
     }

    2.9 启动 停止 重载
sudo /data0/nginx/nginx
sudo /data0/nginx/nginx -s stop
sudo /data0/nginx/nginx -s reload
        
如果运行出现[alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (2: No such file or directory)
就要mkdir /usr/local/nginx/logs
cd /usr/local/nginx/logs
touch error.log
    如果你的域名开启了cdn 需要子cdn那里配置https





转载原创文章请注明出处,转载至: 梁钟霖个人博客www.liangzl.com

Nginx配置http请求强转到https请求

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系

8条评论

Loading...


发表评论

电子邮件地址不会被公开。 必填项已用*标注

自定义皮肤
注册梁钟霖个人博客