nginx反向代理配置
配置文件
编辑/nginx/conf/nginx.conf文件
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#转发的host为域名时,需要配置dns地址
resolver 114.114.114.114;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
#相同路径
#请求路径 http://loalhost/api1/user,转发路径 http://localhost:8080/api1/user
location /api1 {
proxy_pass http://localhost:8080;
}
#后缀路径
#请求路径 http://loalhost/api2/user,转发路径 http://localhost:8080/user
location ^~/api2/ {
proxy_pass http://localhost:8080/;
}
#动态转发,转发的地址由请求头 Proxy-Addr 内容决定,使用相同路径
#请求路径 http://loalhost/proxy1/user,并携带请求头 Proxy-Addr: 127.0.0.1:8079
#转发路径 http://127.0.0.1:8079/proxy1/user
location ^~/proxy1/ {
proxy_pass http://$http_proxy_addr$request_uri;
}
#动态转发,转发的地址由请求头 Proxy-Addr 内容决定,使用后缀路径
#请求路径 http://loalhost/proxy2/user,并携带请求头 Proxy-Addr: 127.0.0.1:8078
#转发路径 http://127.0.0.1:8078/user
location ^~/proxy2/ {
if ($request_uri ~ /proxy2/(.+)) { set $rightUrl $1; }
proxy_pass http://$http_proxy_addr/$rightUrl;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
https配置
server {
listen 80;
server_name www.hostname.com;
return 301 https://www.hostname.com$request_uri;
}
server {
listen 443 ssl;
server_name www.hostname.com;
ssl_certificate cert/hostname.com_chain.crt;
ssl_certificate_key cert/hostname.com_key.key;
#ssl_session_cache shared:SSL:1m;
#ssl_session_timeout 5m;
#ssl_ciphers HIGH:!aNULL:!MD5;
ssl_session_timeout 24h;
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 /usr/share/nginx/html;
index index.html;
}
}
不积跬步无以至千里
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?