当前位置:首页 > 技术文章 > 正文内容

nginx 代理转发 http https 基本用法

arlanguage3个月前 (01-31)技术文章26

nginx 配置http最简单的用法;

server{
   # 监听的端口
   listen      80;
   # 绑定的域名,多个用空格分开即可。
   server_name prvt.cool www.prvt.cool;
   location / {
       # 代理的地址 
       proxy_pass http://127.0.0.1:9010; 
   }
}

一般作为前置机时,还需要转发ip与host,否者不能获取真实的访问信息。

server{
   # 监听的端口
   listen      80;
   # 绑定的域名,多个用空格分开即可。
   server_name prvt.cool www.prvt.cool;
   location / {
       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;
       # 代理的地址 
       proxy_pass http://127.0.0.1:9010; 
   }
}

nginx http自动跳转到https

server{
   # 监听的端口
   listen      80;
   # 绑定的域名,多个用空格分开即可。
   server_name prvt.cool www.prvt.cool;
   # 自动跳转到https
   rewrite ^(.*)$ https://$host$1 permanent;
}

nginx 配置https最简单的用法,比如您的其他服务端程序,配置证书很麻烦时,可以尝试用NGINX。

server{
        # 一般采用443,也适用其他端口
        listen      443;
        server_name prvt.cool www.prvt.cool;
        ssl on;
        
        # 可在服务商申请免费或收费的域名证书。
        # Linux 配置 pem key
        ssl_certificate /www/server/panel/vhost/cert/您证书存放的实际文件地址;
        ssl_certificate_key /www/server/panel/vhost/cert/您证书key存放的实际文件地址;
        
        # Windows 配置 pem key
        #ssl_certificate d://您证书存放的实际文件地址;
        #ssl_certificate_key d://您证书key存放的实际文件地址;
        
        ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
        ssl_session_cache shared:SSL:10m;
        ssl_session_timeout 10m;
        
        location / {
           # 代理的地址 
           proxy_pass http://127.0.0.1:9010; 
        }
    }

虚拟目录(比如说把静态资源交给nginx处理),有些服务端应用,在处理静态文件时,可能比较麻烦,也可以尝试使用这种方式。

location /upload/ {
    alias D:/website/prvt.cool/files/upload/;
}

nginx 开启缓存,减少服务端请求

proxy_cache_path 服务器物理路径/nginx-cache keys_zone=my-cache:10m use_temp_path=off;
server {

      # .... 其他配置
      
      location / {
      
         # .... 其他配置

         proxy_cache  my-cache;
         # 只缓存状态码是 200 的响应,缓存时间为 10 分钟,支持S M H
         proxy_cache_valid 200 10M;
         
         # 代理的地址 
         proxy_pass http://127.0.0.1:9010;
      }
}


人人为我,我为人人,欢迎您的浏览,我们一起加油吧。

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/1398.html

分享给朋友:

“nginx 代理转发 http https 基本用法” 的相关文章

【Nginx进阶】Nginx安全配置

在本章中,我们将详细介绍 Nginx 的安全配置,包括 SSL/TLS 安全、访问控制、HTTP 安全头、防止 DDoS 攻击和日志审计。Nginx安全配置在现代网络环境中,保障 Web 服务器的安全性至关重要。Nginx 作为一个高性能的 Web 服务器和反向代理服务器,通过合理的安全配置,可以有...

Linux系统非root用户下安装Nginx

通常使用Nginx或者Apache作为Web服务器时,默认监听80端口,因此默认会使用root用户去安装,而且,使用yum命令安装时,通常会安装到默认的路径下,默认路径通常是root用户才有执行权限的。如果不需要使用Nginx监听1024以下的端口,且对权限和网络管理比较严格时,能用非root权限解...

C# 实现高并发 Web 应用的性能优化秘籍

在现代的互联网应用中,尤其是大型 Web 应用,性能和可扩展性成为了核心竞争力。随着用户访问量和数据量的增大,高并发处理成为了系统稳定性和响应速度的关键因素。无论是电商平台、社交网站还是 SaaS 应用,如何应对海量用户的同时访问,确保系统高效运转,已经成为了技术人员面临的重要挑战。C# 和 ASP...

nginx-UrlRewrite 实现URL重写转发

URL重写在前后端分离的开发模式中,会遇到这样一个需求:前端通过特定路由前缀来访问后端接口,例如:http://localhost/api/getUser,这里 api 即是每一个前端 request 所多加的前缀。nginx 需要把http://localhost/api/getUser 转换成后...

成为DevOps工程师,你需要具备哪些技能?

Linux基础Linux系统的基本概念;必须会使用至少一个编辑器,例如VIM;至少会一种shell,例如bash;会使用rsh/ssh/scp/rhost/rsync;cron相关设置和命令,crontab;进程的状态,以及相关的命令ps, top, pgrep,pstree;文件状态的查看排序,l...

Jpom-简而轻的项目监控软件 项目监控的基本流程

简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件您为什么需要 Jpom项目部署运维时,通用的方法是登录服务器,上传新的项目包,备份现有版本,执行相应命令。如果管理多个项目则重复操作上述步骤。不同项目亦存在不同的命令处理方式。项目的运行状态无法掌握等.在中小团队中或者没有专业运维的公司(开发...