当你看到本页面的时候,我知道你是在准备配置一个Nginx反响代理,这里我先给你讲解一下吧。
我想让请求www.baidu.com/Hello -> 127.0.0.1:9000,我们的配置是(注意/ ^ ~ 空格哦)
# 前缀是 ^~ /XXX/,如果是直接访问直接一个^~ /即可
# proxy_pass 最后一个/
location ^~ /Hello/ {
proxy_pass http://roomServerAPI:9000/;
}
# Nginx 配置文件已经引用了本文件 *.conf代表所有.conf后缀的文件
# include /home/java/nginx_confs/*.conf;
# 指定的负载均衡 采用权重的方式
upstream loginServerAPI {
server 127.0.0.1:18080 weight=1;
server 127.0.0.1:9000 weight=10;
}
upstream roomServerAPI {
server 127.0.0.1:18085 weight=1;
server 127.0.0.1:9001 weight=10;
}
upstream shopServerAPI {
server 127.0.0.1:18081 weight=1;
server 127.0.0.1:9002 weight=10;
}
upstream firendcircleServerAPI {
server 127.0.0.1:18083 weight=1;
server 127.0.0.1:9003 weight=10;
}
upstream friendServerAPI {
server 127.0.0.1:18082 weight=1;
server 127.0.0.1:9004 weight=10;
}
upstream areaServerAPI {
server 127.0.0.1:18084 weight=1;
server 127.0.0.1:9005 weight=10;
}
# 让80端口,根据不同的请求路径,访问不同的接口!
server
{
listen 80;
# server_name可以重复,但是server_name+端口不能重复。
server_name IP地址或域名;
location ^~ /login/ {
proxy_pass http://loginServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /room/ {
proxy_pass http://roomServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /shop/ {
proxy_pass http://shopServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /firendcircle/ {
proxy_pass http://firendcircleServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /firend/ {
proxy_pass http://friendServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ^~ /area/ {
proxy_pass http://areaServerAPI/;
proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# 指定请求状态码 跳转指定页面
error_page 500 502 503 504 404 /404.html;
# 定义自己的404页面
location = /404.html {
root /home/java/nginx_html;
# 有了这个autoindex on就可以自动识别下面的图片了
autoindex on;
}
# 放行所有的静态资源从下面找
location ~.*\.(jpg|jepg|gif|css|png|ico|js|ico)?$ {
# 跳转自己的错误页面特面
root /home/java/nginx_html/;
# 有了这个autoindex on就可以自动识别下面的图片了
autoindex on;
}
# 错误日志一定要去查看是否有效哈,最好提前准备好文件夹
access_log /home/java/nginx_logs/java_login.log;
error_log /home/java/nginx_logs/java_login.log;
}
如果自己需要使用,请先阅读一下此配置
更变自己的server_name 和 端口
然后需要重启Nginx。重载Nginx配置文件不建议使用,但是可以用来检测配置文件是否有错误。
切记不要修改本地配置文件,就重载或者重启线上Nginx。一定要去修改线上的配置文件!
特殊说明: 上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取全部资料 ❤
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取全部资料 ❤
评论(0)