NGINX使用笔记
nginx用来做分布式服务器的负载均衡现在很流行,我的小服务器本来是不需要这些东西的,但是因为做微信的需要80端口,多个域名下的网站也想要用80端口,于是就干脆搭建一个nginx来做转发,也算是大材小用了,不过成果还是很好的。
Nginx在Centos下的安装
安装在这里就不介绍了,百度一下都是教程。我参考的是百度经验的文章,这里留一个链接:[centos下安装nginx](http://jingyan.baidu.com/article/2a138328b6baed074a134f26.html)
Nginx的基础配置
安装完nginx之后就要对多个tomcat的代理进行配置,太高深的我也不需要,仅仅是做一下端口转发和缓存管理(这个是为了解决静态资源和页面被缓存而无法刷新的问题,因为网站是java的动态网站)。
直接上代码好了:
文件【…/nginx/conf/nginx.conf】
最主要的部分:server
有三个tomcat,对应的端口分别对应着三个不同的端口
在这里记录一个,其他两个响应的,把端口替换即可
server {
listen 80;//监听80端口
server_name ****;//这里是你的域名或者IP
location / {
proxy_pass http://localhost:9092;//重定向的路径
//下面三行是将主机以及IP带上,否则在项目中无法通过request获取请求的contextPath之类的路径
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
//下面两个location的配置是对于静态资源的缓存,我的项目在不断更新,为了能最快的看到更新结果,所以把缓存时间设得很小,发布环境中应该可以设长一点
location ~ \.(gif|jpg|jpeg|png|bmp|swf)$ {
proxy_pass http://localhost:9092;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
expires 60s;//可以1d
}
location ~ \.(js|css)$ {
proxy_pass http://localhost:9092;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
expires 1s;//可以为30d
}
}