精华内容
下载资源
问答
  • GitLab使用现有Nginx配置HTTPS访问

    千次阅读 2019-03-28 12:31:51
    GitLab默认内置了Nginx,但有些情况下服务器本身已经安装过Nginx,想直接利用现有的Nginx配置HTTPS访问 1、申请证书 在阿里云申请免费的证书,并下载到服务器 2、配置域名解析 创建一条 git.example.com 地址解析 3...

    前言

    GitLab默认内置了Nginx,但有些情况下服务器本身已经安装过Nginx,想直接利用现有的Nginx配置HTTPS访问

    1、申请证书

    在阿里云申请免费的证书,并下载到服务器

    2、配置域名解析

    创建一条 git.example.com 地址解析

    3、设置外部访问地址

    /etc/gitlab/gitlab.rb 设置

    external_url 'https://git.example.com'
    

    4、禁用内置的Nginx

    /etc/gitlab/gitlab.rb 设置

    nginx['enable'] = false
    

    5、设置现有Nginx的用户名

    根据服务器安装Nginx时创建的用户名,在 /etc/gitlab/gitlab.rb 设置

    web_server['external_users'] = ['nginx-user']
    

    6、设置现有Nginx的受信代理

    /etc/gitlab/gitlab.rb 设置

    gitlab_rails['trusted_proxies'] = ['127.0.0.1']
    

    7、在现有Nginx中增加虚拟主机

    /data/nginx/nginx.conf 设置

    upstream gitlab-workhorse {
      server unix:/var/opt/gitlab/gitlab-workhorse/socket fail_timeout=0;
    }
    
    server {
      listen 80;
      server_name git.example.com;
      server_tokens off;
      return 301 https://$http_host$request_uri;
      access_log  /var/log/nginx/gitlab_access.log;
      error_log   /var/log/nginx/gitlab_error.log;
    }
    
    server {
      listen 443 ssl;
      server_name git.example.com;
      server_tokens off;
      root /opt/gitlab/embedded/service/gitlab-rails/public;
      
      ssl on;
      ssl_certificate cert/git.example.com/git.example.com.pem;
      ssl_certificate_key cert/git.example.com/git.example.com.key;
      
      ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_prefer_server_ciphers on;
      ssl_session_cache shared:SSL:10m;
      ssl_session_timeout 5m;
      
      access_log  /var/log/nginx/gitlab_access.log;
      error_log   /var/log/nginx/gitlab_error.log;
    
      location / {
        client_max_body_size 0;
        gzip off;
        
        proxy_read_timeout      300;
        proxy_connect_timeout   300;
        proxy_redirect          off;
    
        proxy_http_version 1.1;
    
        proxy_set_header    Host                $http_host;
        proxy_set_header    X-Real-IP           $remote_addr;
        proxy_set_header    X-Forwarded-Ssl     on;
        proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto   $scheme;
        proxy_pass http://gitlab-workhorse;
      }
    }
    

    8、重新配置

    nginx -t
    nginx -s reload
    gitlab-ctl reconfigure
    

    9、参考资料

    展开全文
  • centos nginx配置https访问

    千次阅读 2017-12-05 11:10:58
    yum install openssl-devel2,确保nginx编译是添加了ssl模块--with-http_ssl_module //编译时需添加configure参数3,生成私钥证书cd /usr/local/nginx //进入你的nginx目录 mkdir ssl //为证书创建目录 cd ssl ...

    1,下载openssl

    yum install openssl
    yum install openssl-devel

    2,确保nginx编译是添加了ssl模块

    --with-http_ssl_module  //编译时需添加configure参数

    3,生成私钥证书

    cd /usr/local/nginx //进入你的nginx目录
    mkdir ssl   //为证书创建目录
    cd ssl
    openssl genrsa -des3 -out server.key 1024   //创建私钥 输入口令
    openssl req -new -key server.key -out server.csr    //创建自签名证书 按照提示输入(随便输^_^)
    openssl rsa -in server.key -out server.key  //修改nginx启动ssl不需要口令
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt  //绑定证书使用server.key私钥
    

    4.配置nginx.conf (也可以自己建vhost文件存放nginx配置然后include进去 , 方便整理 , 尽量不要在原文件上写 , 原文件经常备份)

    //复制上面的server段
    server {
            //修改监听443
                listen       443;
                server_name  localhost;
                //开启ssl服务
                ssl                  on;
                //指定证书和私钥的位置
                ssl_certificate      /usr/local/nginx/ssl/server.crt;
                ssl_certificate_key  /usr/local/nginx/ssl/server.key;
                ssl_session_timeout  5m;
                ssl_protocols  SSLv2 SSLv3 TLSv1;
                ssl_ciphers  HIGH:!aNULL:!MD5;
                ssl_prefer_server_ciphers   on;
    
                location / {
                    root   html;
                    index  index.html index.htm;
                }
            }
    

    这里写图片描述
    5,重启nginx配置

    /usr/local/nginx/sbin/nginx -t      //检查语法
    /usr/local/nginx/sbin/nginx -s reload   //重加载nginx配置,也可以stop再start重启

    6,浏览器用https访问
    地址栏输入 : https://127.0.0.1
    注意 : 自签名证书没有认证 , 会被浏览器拦截 , 需要添加信任

    展开全文
  • Nginx配置HTTPS

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

    Nginx配置HTTPS

    最近配置了现网网站的HTTPS,简单记录一下配置过程。

    先交代一下我的服务部署环境:Nginx监听80端口,转发到Tomcat8080端口;服务器使用的是阿里云的ECS,操作系统是Windows Server 2012CA证书也是在阿里云的CA证书服务上面申请的免费证书。

    1. 申请CA证书
      首先去购买CA证书。一般各大云服务提供商都会有此类证书服务,根据公司和业务需求,可以自己选择免费或者付费的证书。我选择的是Symantec 赛门铁克的免费型DV SSL,此类证书一个证书对应一个域名,如果涉及到二级域名需要另外申请一个二级域名的CA证书。阿里云上面的证书购买过程比较简单,需要注意的两个地方:1.要对域名进行验证;2.CSR的生成方式。如果自己的域名是放在阿里云解析上面的,阿里云会自动校验;如果域名没有在阿里云上面解析,需要按照阿里云的提示进行一下操作。另外CSR的生成方式建议选择系统生成CSR,自己生成CSR稍微麻烦一点。证书购买成功后补全好自己的域名即可。
    2. Nginx配置
      CA证书审核通过后,将证书下载到本地,会得到一个zip包,里面有xxx.keyxxx.pem两个文件。
    1. Nginx的安装目录下创建cert目录,并将xxx.keyxxx.pem拷贝到该目录中。注意:如果是自己生成的CSR文件,应该只有一个xxx.key文件,将该文件拷贝进去就可以了。
    2. 打开conf目录中的nginx.conf配置文件修改443端口监听配置。Nginx默认配置是将443端口的监听配置注释掉了的,如下:
    # HTTPS server
    # #server {
    # listen 443;
    # server_name localhost;
    # ssl on;
    # ssl_certificate cert.pem;
    # ssl_certificate_key cert.key;
    # ssl_session_timeout 5m;
    # ssl_protocols SSLv2 SSLv3 TLSv1;
    # ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    # ssl_prefer_server_ciphers on;
    # location / {
    #
    #
    #}
    #}
    

    将注释打开,并对其中部分内容进行修改,修改后如下:

    server {
        listen 443;
        server_name your-domain-name;
        ssl on;
        root html;
        index index.html index.htm;
        ssl_certificate   cert/214293826510663.pem;
        ssl_certificate_key  cert/214293826510663.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 / {
            root html;
            index index.html index.htm;
        }
    }
    
    1. 修改配置并保存后,Nginx安装目录运行nginx.exe -s reload命令可重启Nginx使配置生效。
    2. 通过https:\\xxxx.com方式访问你的网站,如果能够正常访问,浏览器左边出现绿色的标记或者出现锁的标记那就成功了。

    几点注意事项:

    1. 如果HTTPS方式访问网站出现无响应的情况,可以看看自己的服务器防火墙配置,是不是需要将443端口加到例外中去;
    2. 注意自己xxx.pemxxx.key的存放路径,区分相对路径和决定路径使用方式;
    3. 通过Nginx安装目录下的logs文件夹中的access.logerror.log日志文件来进行排错;
    4. 同一个Nginx可以配置多个HTTPS的域名,只需要将上面443端口的监听配置复制一份加到配置文件中,然后修改好相应的server_namexxx.pemxxx.key文件路径即可。

    补充一点配置:
    如果Nginx配置了HTTPS,那背后的Tomcat就没有必要再进行配置了,另外,为了兼容原来80端口的HTTP方式的访问,可以将80端口的访问请求全部转发到443端口上,增加配置如下:

    server {
        listen       80;
        server_name  your-domain.com;
    
        location = / {
            rewrite ^(.*) https://your-domain.com/$1 permanent;
        }
    
        location / {
            rewrite ^(.*) https://your-domain.com/$1 permanent;
        }
    }
    
    展开全文
  • Nginx配置Https访问,反向代理tomcat,发现两个问题: (1)redirect之后的schema全变成了http。 (2)request.getSchema()全部返回http。 对于(1)解决办法:参考:...

    Nginx配置Https访问,反向代理tomcat,发现两个问题:

    (1)redirect之后的schema全变成了http。

    (2)request.getSchema()全部返回http。

    对于(1)解决办法:参考:http://blog.csdn.net/mr_smile2014/article/details/51701878

    server {  
        listen 80 default_server;  
      
        location / {  
            proxy_pass http://127.0.0.1:8080;  
            proxy_redirect http:// $scheme://;  
        }  
    }  

    对于(2)的解决办法:参考:http://feitianbenyue.iteye.com/blog/2056357

    nginx上配置:

    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;  

    tomcat上配置:

    <Engine >
    	<Valve className="org.apache.catalina.valves.RemoteIpValve"  
    	remoteIpHeader="X-Forwarded-For"  
    	protocolHeader="X-Forwarded-Proto"  
    	protocolHeaderHttpsValue="https"/> 
    </Engine >

    重启,over!


    关于 RemoteIpValve,有兴趣的同学可以阅读下 :http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/catalina/valves/RemoteIpValve.html
    Tomcat port of mod_remoteip, this valve replaces the apparent client remote IP address and hostname for the request with the IP address list presented by a proxy or a load balancer via a request headers (e.g. "X-Forwarded-For").   
    Another feature of this valve is to replace the apparent scheme (http/https) and server port with the scheme presented by a proxy or a load balancer via a request header (e.g. "X-Forwarded-Proto").  


    展开全文
  • windows中Nginx配置https访问8080端口

    千次阅读 2019-11-29 10:35:18
    windows中Nginx配置https访问8080端口开始配置Nginx注意图片内容 #证书申请: 如果是购买腾讯云和阿里云的服务器,可以到ssl证书申请免费版的一年的证书 申请成功后,下载证书,里面有 复制Nginx里面的...
  • nginx配置访问本地静态资源

    万次阅读 多人点赞 2019-04-11 18:07:39
    nginx作为一款高性能的服务器,用途很多...例如html,js,css或者图片等放到nginx指定的目录下,访问的时候只需要通过IP加路径就可以实现高效快速的访问, 下面说说如何在windows下使用nginx作为静态资源服务器, 1、...
  • nginx配置https,支持http和https访问

    千次阅读 2019-07-18 17:47:44
    移动产品,升级https,由于用了nginx反向代理,所以就把https锁定在了nginx 前期准备 申请阿里云SSL证书 1、找到阿里云SSL证书 2、购买证书 3、根据自己的需求选择证书类型 4、进入SSL证书控制台 5、...
  • nginx配置https服务

    万次阅读 2019-06-22 14:27:14
    nginx配置https服务
  • 最近一直在写关于Nginx教学的博客,今天我们来讲讲这个Nginx怎么配置SSL证书,也就是通过https进行访问。 为什么我们要配置这个SSL证书呀? 好处有很多可以参考一下:...
  • 同时也暂时保留了HTTP协议访问,需要观察HTTPS下时候出现兼容的情况.本篇是记录Nginx反向代理下HTTPS访问静态资源无法加载的问题. 启用HTTPS 站点支持HTTPS是需要证书的,我是在阿里云申请的免费证书,详情请移步...
  • nginx配置https服务器

    千次阅读 2016-10-09 10:27:37
    nginx配置https服务器
  • nginx配置https访问超时

    千次阅读 2014-04-25 14:01:42
    web服务通过nginx配置https之后,外网访问服务超时,内网就ok。 配置如下: server { listen 443; server_name localhost *.nticloud.org; ssl on; ssl_certificate $server_
  • 服务器部署——nginx配置https访问,生成自签名证书

    万次阅读 热门讨论 2018-04-27 13:14:41
    正文开始:(绿色文字为关键命令) 这里说下Linux 系统怎么通过openssl命令生成 证书。 创建存放证书的目录,此目录可自定义 cd /etc/nginx mkdir key ...推荐输入。因为以后要给nginx使用...
  • Nginx配置文件(nginx.conf)配置详解

    万次阅读 多人点赞 2016-02-19 10:03:50
    Nginx配置文件nginx.conf配置详解如下: usernginxnginx; Nginx用户及组:用户组。window下指定 worker_processes8; 工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU。 error_loglogs/error.log;...
  • 一:nginx配置https 1:安装nginx 注:(因为nginx要支持ipv6和https,所以在安装nginx时编译需要如下编译),如果之前已经编译,则进行如下编译后只执行make,千万千万别再执行完make后再执行make install; ./configure \ --...
  • nginx配置HTTPS

    万次阅读 多人点赞 2016-09-19 18:23:24
    使用ssl模块配置同时支持http和https并存一,生成证书# 1、首先,进入你想创建证书和私钥的目录,例如: cd /etc/nginx/# 2、创建服务器私钥,命令会让你输入一个口令: openssl genrsa -des3 -out server.key 1024#...
  • Windows系统配置nginx实现https访问

    万次阅读 2018-10-31 23:44:55
    1.安装nginx 下载与当前Windows系统版本对应的nginx,本次选择的是nginx-1.8.1版本。附上nginx下载地址:http://nginx.org/en/download.html。 2.安装OpenSLL 下载地址:...
  • nginx配置https和http共存

    千次阅读 2019-01-18 20:13:10
    服务器安装了ssl证书,在nginx配置https监听的443端口后,只能收到https的请求,http请求被拦截了 2 原nginx配置ssl写法 server { listen 443; server_name localhost; ssl on; root html; index index....
  • nginx配置https后重新启动

    千次阅读 2018-03-17 11:53:29
    由于http访问不是很安全,所以现在上线的产品访问都需要配置成安全模式https,下面就来介绍一下,在nginx配置https的步骤:先登录阿里云服务,申请免费的ssl安全文件,如图:点击下载后进入下载ssl文件页面,如图...
  • 记一次Nginx配置https报错400问题

    千次阅读 2020-03-16 00:12:45
    记一次Nginx配置https报错400问题
  • linux nginx配置https

    万次阅读 多人点赞 2017-06-01 18:59:58
    (1)linux centos7安装nginx教程:linux nginx安装以及配置(2)小程序的官网也给出了https的搭建教程:HTTPS服务器配置一、SSL证书申请我查看文章发现现在主流的ssl证书有openssl和startssl,这里我们使用openssl...
  • Centos7下nginx配置https

    千次阅读 2017-08-18 14:02:08
    Centos7下nginx配置https在互联网信息安全日益重要的今天,https协议几乎成了标配,部分浏览器如果遇到非https的服务器会拒绝访问,有的平台也要求app的服务器要用https协议(如苹果、微信小程序)。一、步骤1 配置...
  • nginx配置https以及能够局域网访问

    万次阅读 2017-02-22 12:23:20
    一、安装Nginx (安装Nginx直接解压便可以用) 二、安装Openssl 1、下载地址http://slproweb.com/products/Win32OpenSSL.html,必须下载1.0版本,不要下载1.1以及1.1以上的版本。 2、一直点下一步直接安装到C盘即可...
  • centOS7安装nginx及nginx配置

    万次阅读 多人点赞 2019-05-09 14:59:19
    gcc是linux下的编译器在此多做解释,感兴趣的小伙伴可以去查一下相关资料,它可以编译C,C++,Ada,Object C和Java等语言 命令:查看gcc版本 gcc -v 一般阿里云的centOS7里面是都有的,没有安装的话会提示...
  • Nginx配置安全访问

    千次阅读 2020-02-09 16:21:59
    Nginx配置安全访问1. Nginx介绍及下载资源2. Nginx安装2.1 在Windows下安装2.2 在Liunx下安装2.3 检测是否已安装3. 安全访问介绍4. 安全访问配置4.1 正式证书及域名安全访问配置4.2 局域网下安全访问配置 1. Nginx...
  • CentOS 7配置Nginx实现https访问

    千次阅读 2018-10-19 18:22:09
    然后需要绑定域名给SSL证书,否则证书能审核。去阿里云注册一个域名,接着进入到域名控制台,再进入域名DNS解析。 添加解析记录,需要给SSL证书绑定怎样的域名就怎样添加记录。我这里添加了两条,一条对应...
  • IntelliJ IDEA-nginx配置https访问

    千次阅读 2018-05-14 14:09:43
    上节说了 eclipse-tomcate里配置https访问,这次来说下 IntelliJ IDEA-nginx配置https访问。 前提:我们公司提供的是CA证书,解压之后是 xxx.pem xxx.key 两个文件一、下载 安装windowns下nginx...
  • Nginx 配置https引起 Mixed Content 问题

    千次阅读 2018-11-15 16:06:14
    Nginx 配置https引起 Mixed Content 问题1.问题2.原因 1.问题 Nginx 配置 https 前后端分离项目,后台请求跳转到 http 的 Tomcat。 用户 --https–&amp;gt; Nginx --http–&amp;gt; Tomcat 打开网站时出现...
  • Linux CentOS7配置Nginx支持HTTPS访问

    千次阅读 2016-12-08 09:53:07
    1.安装git和bc yum -y install git bc 2.安装Nginx (1)准备: yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl ...wget https://nginx.org/download/nginx-1.11.6.tar.gz(3)解压: tar
  • nginx支持https访问

    万次阅读 2018-10-24 09:44:16
     为了提高web应用的安全性,现在基本上都需要支持https访问。在此记录一下自己在nginx下的配置过程。 准备安装包  将nginx-1.12.1.tar.gz、openssl-1.0.0e.tar.gz拷贝到 /root/ 下(如果文件已经存在,则需要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 260,140
精华内容 104,056
关键字:

nginx配置https访问不了