描述场景 有8080端口下Tomcat1下项目A.
有8090端口下tomcat2下项目B.
......
通过使用一个域名+(不同)项目名 访问不同的tomcat下的项目.
配置文件如下:(均在conf文件内添加即可 不删除或修改其他内容).
server {
listen 80
server_name localhost
#charset koi8-r
#access_log logs/host.access.log main
location /Name1 {
#root html
proxy_pass http://localhost:8080/A
proxy_redirect http://host:8080 http://$host:$server_port//这个配置是将我们的host主机名和端口号,被host:8080所替代.不然因为域名问题,加载js,css文件会报404错误.
index index.html index.htm
}
location /Name2 {
#root html
proxy_pass http://localhost:8090/B
proxy_redirect http://host:8090 http://$host:$server_port
index index.html index.htm
}
..........省略
}
配置保存,重启.吐槽一下nginx的重启运行.很麻烦.我是在任务管理器内直接停止后重启的.
以上即可实现 localhost+A-------访问tomcat A项目
localhost+B-------访问tomcat B项目
给网址后面添加一个随机数(或者是任意的字符串)即可,比如原来的网址是这样的:http....../.../1.htm
改为
http....../.../1.htm?1234
即可(注意问号不能省)。
浏览器是根据网址来缓存的,所以只要给网址接个尾巴,浏览器就会认为是新网址,就会从网上重新下载数据了。当然,如果下次再次改变了网页内容,这个尾巴就要再次修改。
给css和js添加所谓版本号其实也是同一个原理。这个版本号其实就是给css和js的网址接个尾巴而已。
这个也同样适用网页里面的图片、音乐等资源,事实上只要是http协议的元素都可以利用这个办法来避开缓存实时刷新。