nginx ssl证书配置

这篇具有很好参考价值的文章主要介绍了nginx ssl证书配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

linux服务器nginx配置ssl证书。


一、ssl证书

需要申请域名,然后域名解析到你的外网服务器ip,然后申请ssl证书,然后下载下来,一般ssl证书可以通过 tomcat nginx等配置;

二、nginx配置ssl证书

  1. 更新yum
yum update yum
  1. gcc安装
yum -y install gcc gcc-c++ autoconf automake make
  1. 其他安装
yum -y install zlib zlib-devel pcre-devel openssl openssl-devel
  1. 找个位置下载nginx 例如: /usr/local/src
wget https://nginx.org/download/nginx-1.24.0.tar.gz
  1. 当前位置解压
tar -zxvf nginx-1.24.0.tar.gz
  1. 创建用户组 用户
groupadd nginx
useradd nginx -g nginx -s /sbin/nologin -M
  1. 进入解压后的目录 编译nginx并加入ssl 安装
# 配置ssl
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx
# 安装编译
make &&make install
  1. 修改nginx文件夹归属
chown -R nginx:nginx /usr/local/nginx
  1. 可在安装路径中 /usr/local/nginx/sbin 启动nginx
#启动
./nginx
#重启
./nginx -s reload
#关闭
./nginx -s stop
#验证配置nginx.conf正确
./nginx -t
  1. 访问地址 ip 是否能看到nginx默认页面.ok后,停止nginx
  2. 下载证书 改名字,上传到nginx的安装目录的conf的cert文件下 默认安装位置为: /usr/local/nginx/conf/cert
server.crt
server.key
  1. 修改nginx.conf 所在位置为 /usr/local/nginx/conf
    ● 代理vue前端页面
    ● 代理后端接口为/api/ 去掉此前缀 转发到服务器的9000端口
#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        
    	  server_name  localhost;

        location / {
            # 前端地址在 /usr/local/nginx/html/dist
            root   html/dist/;
            index  index.html index.htm;
            # 刷新404
            try_files $uri $uri/ /index.html;
        }

      # 代理服务端接口
	    location /api/ {
	           default_type  application/json;
	           proxy_pass http://ip:9000;
	           rewrite /api/(.*) /$1 break;
	           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_pass_request_headers on;
	           proxy_next_upstream error timeout;
	     }
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
  1. 配置证书的完整 nginx.conf
#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        
	   server_name  localhost;

        location / {
            root   html/dist/;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }

         # 代理服务端接口
	    location /dev-api/ {
	           default_type  application/json;
	           proxy_pass http://ip:9000;
	           rewrite /dev-api/(.*) /$1 break;
	           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_pass_request_headers on;
	           proxy_next_upstream error timeout;
	     }
	      # 代理图片服务接口
	     location /image/ {
	           default_type  application/json;
	           rewrite /image/(.*) /$1 break;
	           proxy_pass https://test-lsdj.obs.cn-north-4.myhuaweicloud.com/;
	           proxy_pass_request_headers on;
	           proxy_next_upstream error timeout;
	      }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server ssl 配置
    #
    server {
        listen       443 ssl;
        # 自己申请的域名
        server_name  www.baidu.com;
		
        ssl_certificate      cert/server.crt;
        ssl_certificate_key  cert/server.key;


        # 一下配置同之前的配置即可
        location / {
            root   html/dist/;
            index  index.html index.htm;
            try_files $uri $uri/ /index.html;
        }
         # 代理服务端接口
	    location /api/ {
	           default_type  application/json;
	           proxy_pass http://ip:9000;
	           rewrite /api/(.*) /$1 break;
	           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_pass_request_headers on;
	           proxy_next_upstream error timeout;
	     }

}

13 . 可在安装路径中 /usr/local/nginx/sbin 启动,验证是否正确

./nginx

也就是相当于,没有ssl的时候, 配置好代理后可以用验证完毕;
当配置ssl的时候,之前的配置就用不到了,因为ssl是443端口,所以需要全部重新配置;并配置ssl开启 以及证书相关;

总结

至此 已经可以成功通过域名访问到服务器的页面了~~文章来源地址https://www.toymoban.com/news/detail-847057.html

到了这里,关于nginx ssl证书配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • nginx ssl证书配置

    linux服务器nginx配置ssl证书。 需要申请域名,然后域名解析到你的外网服务器ip,然后申请ssl证书,然后下载下来,一般ssl证书可以通过 tomcat nginx等配置; 更新yum gcc安装 其他安装 找个位置下载nginx 例如: /usr/local/src 当前位置解压 创建用户组 用户 进入解压后的目录 编译nginx并加入

    2024年04月10日
    浏览(39)
  • Nginx 的SSL证书配置

    目录 1.申请域名,证书下载 2.准备站点源代码 3.修改nginx 对应网站的配置文件 4.修改 host 文件 http协议访问的网站默认会显示不安全,因为数据默认是明文传输的 https是http+ssl,ssl是加密协议,通过证书来进行加密的,安装了证书的网站才会用https协议来交 互,才不会提示不安

    2024年02月02日
    浏览(46)
  • nginx 配置ssl证书方法

    到域名商哪里,申请免费ssl证书,选择nginx版本的sll证书下载到本地,在服务器中进入我们的nginx目录,新建一个ssl文件夹,把下载好的ssl证书解压放到里面。 到nginx目录下打开nginx.conf,修改下方,代码到文本中保存即可。 保存后重启nginx: nginx -s reload 在 http 块中,定义了两

    2024年02月06日
    浏览(37)
  • openssl生成证书和nginx配置ssl证书

    一般情况下,使用ssl证书需要三个操作步骤:1.生成密钥对;2.生成证书请求文件;3.生成证书文件。从单纯的开发者角度来说,可以使用开源的openssl生成密钥和证书,且通过openssl的req命令,可以一个命令完成上述3个操作。 req命令主要的功能:生成证书请求文件、验证证书请

    2024年02月07日
    浏览(45)
  • http的ssl证书保姆级配置安装-多域名 免费ssl证书 解析 nginx配置

    摘要:多个域名(mysite.com,*.mysite.com),免费证书,添加解析记录,申请证书的shell脚本,nginx配置 登录免费证书网站:https://freessl.cn/ 输入:mysite.com,*.mysite.com 选择亚洲诚信trustasia 点击“创建免费的ssl证书” ACME域名配置 域名:确认刚才输入的mysite.com,*.mysite.com无误,点击下

    2024年02月09日
    浏览(100)
  • 配置https---Nginx认证ssl证书

    nginx作为前端的负载均衡服务器已经很熟悉了,项目需要使用https安全的时候就需要认证证书了 dockerweb管理工具 Portainer 如果对docker不那么熟悉可以使用docker 第三方管理端 然后访问本地9000端口,登录后可以管理容器镜像 有了该工具可以直接进入容器查看日志等操作 nginx环境安装

    2024年01月19日
    浏览(53)
  • Nginx中的SSL加密配置与证书生成

    目录 整体的操作流程 二、然后配置网络yum源 并mv CentOS-* backup挪动到上层目录中  三、在家目录下解压 文件,并查看  四、添加两种编译模块./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module 五、 显示少什么就 yum install (缺少的依赖的名称)-devel 下图为

    2024年02月05日
    浏览(48)
  • Ubuntu安装nginx到配置ssl证书

    1、命令安装nginx 配置文件默认在 /etc/nginx文件夹下面,可以编辑nginx.conf 或者 sites-enabled文件夹下面的默认配置文件 default 2、常用命令 查看版本号 nginx -v 关闭 nginx -s stop 启动  nginx 重新加载  nginx -s reload 检查配置文件是否有问题  nginx -t 以特定的配置文件启动  nginx -c  文件

    2023年04月22日
    浏览(51)
  • docker安装nginx并配置ssl证书

    腾讯云申请 阿里云申请 还有一步DNS验证,因为我这边已经申请了证书,不好演示了。也挺简单的,按照教程来就行了,在域名解析里面加一条DNS解析记录,然后点击验证,通过了,就申请成功了,然后下载nginx版本的证书压缩包,解压上传到服务器就可以了 *稍微需要注意下

    2024年02月05日
    浏览(41)
  • nginx配置ssl证书使用https访问

    一:申请证书,我使用的是阿里云免费证书 二:下载证书,解压到服务器上 两个文件:www.xx.com.pem和www.xx.com.key 三:打开配置文件/usr/local/nginx/conf/nginx.conf 放开端口443,替换ssl_certificate和ssl_certificate_key为自己证书路径    server {         listen       443 ssl;         server_na

    2024年01月20日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包