Nginx实现反向代理
第一步:修改nginx.conf文件
我是通过xftp修改文件,需要给nginx.conf权限
(1)切换到conf目录:cd /usr/local/nginx/conf
(2)给nginx.conf权限:chmod 777 nginx.conf
(3)修改域名
第二步:修改hosts文件
先用管理员身份打开记事本,hosts文件在windows下的 C:\Windows\System32\drivers\etc
打开文件需要选择所有文件,不然hosts不会显示出来
增加红色箭头一行,格式是:Nginx服务器的IP+空格+上面配置nginx.conf文件所配置的域名
第三步:配置前端工程位置
切换回来nginx.conf文件,增加红色箭头一行,记得加上分号结尾
root指Nginx服务器下前端工程位置
第四步:创建上一步配置的前端工程的文件夹
这个目录用于存放静态页面文件,如html,js等
mkdir -p /data/itrip/itripfront
第五步:nginx.conf文件配置上默认页
第六步:修改nginx.conf文件的location内容
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://itripbiz_server;
红色箭头所指的作用是:将request请求中的host和客户端中的真实ip代理到后端tomcat,这样后端才能获取到真实ip,否则获取的是代理的ip
第七步:在nginx.conf文件添加upstream配置
upstream后面的itripbiz_server要跟第六步配置的location里的proxy_pass配置的一样
upstream itripbiz_server{
server 127.0.0.1:8080;
}
第七步:Nginx配置静态文件缓存(注意格式)
(gif|jpg|png|html|mp3)是配置需要缓存的格式,真实情况需要配置什么格式可以往后继续加
expires:设置缓存时间
location ~ .*\.(gif|jpg|png|html|mp3)$
{
expires 6h;
}
location ~ .*\.(js|css)?$
{
expires 2h;
}
第八步:配置日志文件,并在Nginx服务器创建该文件
创建文件夹:mkdir -p /data/logs/nginx/
创建文件:先在windows下创建appccess.log通过xftp移动过去上面创建好的文件夹
是当前区域的日志文件,不是全局的日志文件
增加红色箭头一行
access_log /data/logs/nginx/appccess.log;
用指令测试下nginx.conf文件有没有错误:/usr/local/nginx/sbin/nginx -t
这样代表文件没有错误
测试域名成功(需要先开放8080端口)