精华内容
下载资源
问答
  • nginx开通https

    万次阅读 多人点赞 2020-06-12 17:35:36
    2、两个证书放在cert目录上然后放到nginxnginx.conf同目录下 3、去nginx解压目录下执行 ./configure --with-http_ssl_module 如果报错 ./configure: error: SSL modules require the OpenSSL library. 则执行 ...

    nginx开通https

    简述

    为大家提供一个https的配置流程吧,供大家参考。

    1、下载SSL证书

    2、两个证书放在cert目录上然后放到nginx 与nginx.conf同目录下

    3、去nginx解压目录下执行

    ./configure --with-http_ssl_module
    

    如果报错 ./configure: error: SSL modules require the OpenSSL library.
    则执行

    yum -y install openssl openssl-devel
    
    ./configure
    
    ./configure --with-http_ssl_module
    

    4、执行 make(切记不能 make install 会覆盖安装目录)

    5、将原来 nginx 备份

    cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
    

    6、将新的 nginx 覆盖旧安装目录

    cp objs/nginx /usr/local/nginx/sbin/nginx
    

    如果报错,执行

    cp -rfp objs/nginx /usr/local/nginx/sbin/nginx
    

    就这样了,都看到这里了,点赞关注走一走吧,谢谢大家!
    查看修改MySQL表结构命令

    展开全文
  • nginx http跳转https

    千次阅读 2018-01-11 19:28:23
    3、实现:写成两个配置文件一个叫test.conf内容如下: server { listen 80; server_name www.test.com; location / { rewrite ^/(.*) https://www.test.com; #当访问http时,重写到https

    1、需求:当访问http时,自动跳转到https

    2、环境:一个测试的nginx+静态页面

    3、实现:写成两个配置文件一个叫test.conf内容如下:

    server {
    listen 80;
    server_name www.test.com;
    location / {
    rewrite ^/(.*) https://www.test.com; #当访问http时,重写到https上
    }
    }

    另一个配置文件test.conf,内容如下:

    server {
    listen 443 ssl;
    server_name www.test.com;
    root /usr/local/nginx/conf/vhost/;
    index test.html;
    error_page   405 =200 $uri; #post无法请求时返回405状态码,指向200.让其可以正常访问。
    }

    4、遇到的错误:第一次配置时写成了如下方式(无法访问):

    server {
    listen 80;
    listen  443 ssl;
    server_name www.test.com;
    rewrite ^(.*)$  https://$host$1 permanent;
    root /usr/local/nginx/conf/vhost/;
    index test.html;
    error_page   405 =200 $uri;
    }

    访问时浏览器报错如下:

    ERR_TOO_MANY_REDIRECTS


    展开全文
  • 在Ubuntu 18.04上安装和配置Nginx 1. 安装Nginx Nginx的软件包在Ubuntu默认软件仓库中可用。 安装非常简单,只需键入以下命令: # 更新软件包 sudo apt update # 安装Nginx sudo apt install -y nginx 安装完成...

    在Ubuntu 18.04上安装和配置Nginx

    1. 安装Nginx

    • Nginx的软件包在Ubuntu默认软件仓库中可用。 安装非常简单,只需键入以下命令:
    # 更新软件包
    sudo apt update
    
    # 安装Nginx
    sudo apt install -y nginx
    
    • 安装完成后,请检查Nginx服务版本:
    sudo nginx -v
    
    • Nginx安装完毕

    Nginx防止中乱码

     server{
         ...
        listen 8088 default_server;
        listen [::]:8088 default_server;
        charset utf-8;  #设置字符集为 utf-8
     }
    

    Nginx配置https环境

    • https简单介绍

    根据维基百科的解释:

    HTTPS,英语:Hypertext Transfer Protocol Secure)超文本传输安全协议,
    用以提供加密通讯及对网络服务器身份的鉴定

    开始配置

    一、升级 OpenSSL

    # 更新源
    sudo apt-get update
    
    # 安装openssl依赖库
    sudo apt-get install openssl
    
    # 查看安装好的openssl版本号
    openssl version
    

    二、去购买域名的地方 或者 腾讯云阿里云等等地方去申请ssl证书 (申请免费的即可,土豪请随意)

    三、找一个目录存放nginx的证书文件(一般为两个)

    # 在nginx配置目录里创建一个 ssl目录
    mkdir  /etc/nginx/ssl
    mkdir  /etc/nginx/ssl/private  #存放两个ssl证书
    mkdir  /etc/nginx/ssl/certs # 存放openssl生成的dhparam.pem
    
    

    四、修改Nginx的配置文件

    • 当然你也可以下载到Windows端进行修改避免出现错误
    # 使用apt命令安装的Nginx配置文件一般就在这里
    vi /etc/nginx/sites-enabled/default
    
    server {  
        listen 443 ssl;
        listen [::]:443 ssl ipv6only=on;
        # 这里输入你证书绑定的域名 www解析和  @ 解析 中间以空格隔开
        # www.yuweb.cf
        # yuweb.cf
        server_name www.yuweb.cf yuweb.cf;
    
        ssl on;
        # 这里输入你证书的存放路径
        ssl_certificate /etc/ssl/private/example_com.pem;
        ssl_certificate_key /etc/ssl/private/example_com.key;
    }
    

    五、增加安全性(可选)

    • 以上这么做并不安全,默认是 SHA-1 形式,而现在主流的方案应该都避免 SHA-1,为了确保更强的安全性,我们可以采取迪菲-赫尔曼密钥交换
    • 首先,进入/etc/nginx/ssl/certs目录并生成一个dhparam.pem
    cd /etc/nginx/ssl/certs
    
    • 生成dhparam.pem
    openssl dhparam -out dhparam.pem 2048
    
    • 可选加密位数 根据机器性能来 位数越高越安全 生成时间也越长

    • 1024

    • 2048

    • 4096

    • 生成完毕后,在 Nginx 的 SSL 配置后面加入 就是 server代码块中

    server {  
        listen 443 ssl;
        listen [::]:443 ssl ipv6only=on;
        # 这里输入你证书绑定的域名 www解析和  @ 解析 中间以空格隔开
        # www.yuweb.cf
        # yuweb.cf
        server_name www.yuweb.cf yuweb.cf;
    
        ssl on;
        # 这里输入你证书的存放路径
        ssl_certificate /etc/ssl/private/example_com.pem;
        ssl_certificate_key /etc/ssl/private/example_com.key;
        
        ssl_prefer_server_ciphers on;
        # 你的dhparam.pem文件所在位置
        ssl_dhparam /etc/ssl/certs/dhparam.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
        keepalive_timeout 70;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
        
        ssl_stapling on;
        ssl_stapling_verify on;
        resolver 8.8.4.4 8.8.8.8 valid=300s;
        resolver_timeout 10s;
        
        add_header Strict-Transport-Security max-age=63072000;
        add_header X-Frame-Options DENY;
        add_header X-Content-Type-Options nosniff;
    }
    

    六、添加 访问80端口转发到443端口的配置

    • 新增一个server块
    server {
            listen 80;
            listen [::]:80;
            # 主机名 输入你的域名
            server_name yufire.cf www.yufire.cf;
            # 转发到你的 https端口  请输入你的域名
            return 301 https://www.yufire.cf$request_uri;
    }
    

    配置完成之后

    • 检查配置文件是否正确
    nginx -t
    
    如果出现以下错误
    • 大概意思是
      重复绑定了server name,但这个警告不会影响到服务器运行
    • 解决办法 查看是否配置了两个同样的监听端口 同样的主机名
    nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored
    
    • 没有问题后重新加载Nginx配置文件
    nginx -s reload
    
    • 在浏览器访问是否成功
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Krio1hfT-1588549492225)(91348C8B2ABC49D6AD90386F81DC2CBF)]

    Nginx常用命令

    命令作用
    service nginx start开启Nginx服务
    service nginx stop停止Nginx服务
    service nginx restart重启Nginx服务
    nginx -s reload重新加载Nginx配置文件
    nginx -v查看 Nginx的版本号
    nginx -s stop停止 nginx
    nginx -s quit退出 nginx
    nginx -t检查配置文件是否正确

    展开全文
  • Nginx下配置Https证书详细过程

    万次阅读 多人点赞 2018-04-21 14:08:51
    HTTP:是互联网上应用最为广泛的一种网络协议,是一客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。 HTTPS:是以安全为...

    一、Http与Https的区别

    HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。

    HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

    HTTPS和HTTP的区别主要如下:

     

    • 1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
    • 2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
    • 3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
    • 4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

    二、使用openssl生成证书

    openssl是目前最流行的SSL密码库工具,其提供了一个通用、健壮、功能完备的工具套件,用以支持SSL/TLS协议的实现。

    比如生成到:/usr/local/ssl

    openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /usr/local/ssl/nginx.key -out /usr/local/ssl/nginx.crt

    生成过程:

    # openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /u    sr/local/ssl/nginx.key -out /usr/local/ssl/nginx.crt
    Generating a 2048 bit RSA private key
    ...............................................................................+    ++
    ...............+++
    writing new private key to '/usr/local/ssl/nginx.key'
    -----
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [XX]:CN
    State or Province Name (full name) []:beijing
    Locality Name (eg, city) [Default City]:beijing
    Organization Name (eg, company) [Default Company Ltd]:xxxx
    Organizational Unit Name (eg, section) []:xxxx
    Common Name (eg, your name or your server's hostname) []:xxxx(一般是域名)
    Email Address []:xxxx@xxxx.com
    # ll
    total 8
    -rw-r--r--. 1 root root 1391 Apr 21 13:29 nginx.crt
    -rw-r--r--. 1 root root 1704 Apr 21 13:29 nginx.key
    

    三、Nginx安装http_ssl_module模块

    Nginx如果未开启SSL模块,配置Https时提示错误。

    nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:xxx

    nginx缺少http_ssl_module模块,编译安装的时候带上--with-http_ssl_module配置就行了。

    本场景是服务器已经安装过nginx,但是未安装http_ssl_module。

    1.进入到源码包,如:

    cd /app/download/nginx-1.12.2

    2.configure:

    ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    
    #可能需要的依赖包
    yum -y install pcre-devel openssl openssl-devel

    3.make:

    make

    4.不需要执行make install,否则就覆盖安装了。

    5.备份原有的nginx,如:

    cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak

    6.然后将刚刚编译好的nginx覆盖掉原有的nginx(nginx需要停止)

    cp ./objs/nginx /usr/local/nginx/sbin/

    7.查看安装情况:

    /usr/local/nginx/sbin/nginx -V
    nginx version: nginx/1.12.2
    built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
    built with OpenSSL 1.0.2k-fips  26 Jan 2017
    TLS SNI support enabled
    configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    

    四、nginx配置https

    贴部分配置信息:

        server {
    
            listen	80;
    		server_name www.yourdomain.com;
    	    rewrite ^(.*) https://$server_name$1 permanent; #http 跳转 https
        }
    server {
    	listen 443 ssl;
    	server_name www.yourdomain.com;
    	ssl_certificate /usr/local/ssl/nginx.crt;
    	ssl_certificate_key /usr/local/ssl/nginx.key;
    	ssl_session_cache    shared:SSL:1m;
    	ssl_session_timeout  5m;
    	#禁止在header中出现服务器版本,防止黑客利用版本漏洞攻击
    	server_tokens off;
    	#如果是全站 HTTPS 并且不考虑 HTTP 的话,可以加入 HSTS 告诉你的浏览器本网站全站加密,并且强制用 HTTPS 访问
    	fastcgi_param   HTTPS               on;
    	fastcgi_param   HTTP_SCHEME         https;
    	access_log /usr/local/nginx/logs/httpsaccess.log;
    }

    先检验配置的对不对:

    /usr/local/nginx/sbin/nginx -t
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

    重启nginx:

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

    访问:

     

     

     

     

     

     

     

     

     

    新手一枚,欢迎拍砖~ ~ ~

    展开全文
  • 本篇文章主要介绍了Nginx配置多个HTTPS域名的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • Nginxhttp重定向https

    千次阅读 2019-04-06 17:48:41
    Nginx配置同一域名http与https两种方式都可访问,证书是阿里云上免费申请的 server { listen 80; listen 443 ssl; ssl on; server_name 域名; index index....
  • Nginx + Tomcat HTTPS配置

    千次阅读 2017-02-03 16:18:53
    HTTPS证书申请 生成证书请求文件CSR,将私钥文件保存到本地,如/data/web/crt/server.key 提交CSR,申请证书 获取服务器证书,将Email中的SSL证书文本...编辑希望使其支持HTTPS的虚拟主机配置文件,如nginx/conf/vhosts
  • Nginx配置HTTPS

    万次阅读 2017-10-16 17:49:02
    Nginx配置HTTPS最近配置了现网网站的HTTPS,简单记录一下配置过程。先交代一下我的服务部署环境:Nginx监听80端口,转发到Tomcat的8080端口;服务器使用的是阿里云的ECS,操作系统是Windows Server 2012;CA证书也是...
  • Nginx 配置 HTTPS 完整过程

    万次阅读 多人点赞 2018-11-26 10:06:06
    配置站点使用 https,并且将 http 重定向至 https。 1. nginx 的 ssl 模块安装...$ /usr/local/nginx/sbin/nginx -V ![在这里插入图片描述](https://img-blog.csdnimg.cn/2018112610054317.png) 如果出现 configure ...
  • 后经反复测试,已找到解决以上两个问题方法,1安装ngx_http_proxy_connect_module 模块即可支持https代理。2安装lua-nginx-module模块用来解决非80端口代理。 附件包含了全部安装过程,包括nginx.conf lua的配置,...
  • https://help.aliyun.com/document_detail/98728.html?spm=5176.2020520163.cas.15.4ed756a7Oi0HTv https://www.zhanfu6.com 主域名是经过配置ssl安全证书的指向前端页面, http://api.zhanfu6.com 子域名是未...
  • Nginx如何支持HTTPS?手把手教贼简单!

    千次阅读 多人点赞 2020-10-26 09:02:00
    随着我们网站用户的增多,我们会逐渐意识到HTTPS加密的重要性。在不修改现有代码的情况下,要从HTTP升级到HTTPS,让Nginx支持HTTPS很好的选择。今天我们来讲下如何从Ng...
  • IntelliJ IDEA-nginx里配置https访问

    千次阅读 2018-05-14 14:09:43
    前提:我们公司提供的是CA证书,解压之后是 xxx.pem xxx.key 两个文件一、下载 安装windowns下nginxhttp://nginx.org/en/download.html二、cmd进到nginx的安装目录里,启动nginx(start ng...
  • Centos 7安装nginx并配置https

    千次阅读 2019-01-17 10:18:35
    2.安装nginx的依赖环境 yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel gcc-c++:安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境。 pcre pcre-devel :PCRE(Perl ...
  • centos 7.4 + nginx1.15.5 + https配置.

    千次阅读 2018-11-06 14:38:27
    centos 7.4 + nginx1.15.5 + https配置. 首先来说,这一篇文章就已经足够了,但是这篇文章里面有几问题,我和文章中的环境应该是一样的,下载路径,下载版本都一致,但是无法成功…好像是版本问题,无法make…且文章中...
  • windows环境下Nginx部署及Https设置

    千次阅读 2019-08-07 09:56:00
    一、Nginx安装部署及常用命令。 1.1、其实Nginx是免安装的。直接在官网下载zip包,解压即可,下载地址:http://nginx.org/en/download.html,因为我这边的开发服务器是阿里云windows服务器,所以我下载的是对应的...
  • 本篇文章主要解决以下几个问题: 前后端分离项目如何配置Nginx 配置https协议访问 开启http访问但强制跳转https访问 基本的安装就不多说了,...前端代码会调用后端的info和test两个url地址 前端静态文件目录 /var/...
  • windows服务器安装nginx并配置https请求

    千次阅读 2019-08-03 21:30:34
    一、首先安装nginx nginx下载地址:http://nginx.org/en/download.html 本次选择1.8.1版本 安装完成后,解压到随机盘,解压后的目录如下: 二、接下来下载安装OpenSSL,下载时根据电脑系统版本选择下载...
  • Nginx在同一台服务器托管两个网站

    千次阅读 2020-02-19 21:27:02
    需求描述 现有一台阿里云服务器,并且有两个域名,其中一个域名做来搭建... 两个网站分别用两个不同的域名访问 解决步骤 1、因为之前搭建个人博客时在服务器安装部署了Nginx服务器,所以接下来做的事情就是通过...
  • 1、先去下载nginxhttps证书 https://blog.csdn.net/Tomwildboar/article/details/92099792 2、配置nginx nginx.conf代码
  • Nginx部署部分https与部分http

    万次阅读 2013-12-15 16:13:01
    一般而言,大规模的网站都...而中小规模的典型部署常见的是 Nginx+Tomcat/jboss 这种层配置,而Tomcat或jboss 会多于一台,Nginx 作为静态文件处理和负载均衡。下面重点讲解nginx+jboss+ssl的实现  如果Nginx
  • nginx支持多http https

    千次阅读 2017-07-18 18:11:42
    nginx 支持多个https 1:配置多个server 2:将http直接指向https 所有的域名都会自动转成https =========== 1:配置多个server:关键代码 listen 443 ssl; ssl_certificate /mnt/application/nginx/...
  • Centos上利用Docker安装nginx 并且配置https 准备材料 1.一域名(已经解析到下方服务器) 2.一服务器 3.域名相关的ssl证书 下面就开始主要步骤 以下指令为 指定nginx的挂载目录 docker run --detach \ --name ...
  • Nginx上部署HTTPS + HTTP2

    千次阅读 2017-07-17 09:27:26
    Nginx上部署HTTPS依赖OpenSSL库和包含文件,即须先安装好libssl-dev(或者OpenSSL),且ln -s /usr/lib/x86_64-linux-gnu/libssl.so /usr/lib/,然后在编译配置Nginx时要指定--with-http_ssl_module和--with-...
  • nginx部署多个https项目

    千次阅读 2019-02-26 15:38:14
    server { listen 443; server_name localhost; ssl on; root html; index index.html index.htm; ssl_certificate cert/214980223120935.pem; ssl_cert...
  • 基于nginx搭建了一个https访问的虚拟主机,监听的域名是test.com,但是很多用户不清楚https和http的区别,会很容易敲成http://test.com,这时会报出404错误,所以我需要做基于test.com域名的http向https的强制跳转 ...
  • docker安装nginx并配置https访问

    千次阅读 2019-03-06 09:25:02
    1.在dockerhub上查询是否有自己需要的nginx版本 #dockersearchnginx 2.拉取仓库nginx镜像,不加版本号默认拉取最新的版本 #dockerpull nginx 3.启动nginx容器 # docker run --detach \ --name wx-nginx \ -p...
  • 以前都是安装一个nginx简单配置一下,前段时间开发微信小程序,里面必须使用https,就研究了一下nginx如果使用https,也参考了一些资料。 1、首先安装gcc、g++ 首先安装gcc、g++ , gcc是Linux 下默认的 C/C++ ...
  • nginx配置https以及websocket

    千次阅读 2020-08-05 10:36:00
    nginx配置https以及websocket Centos7下nginx配置https和websocket 一、 背景 项目需要nginx带来https和websocket,最后成功应用。把过程做一记录。此过程在完全离线下操作 二、 安装nginx 关于nginx离线在先安装的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 138,543
精华内容 55,417
关键字:

nginx两个https