最简单的配置
在server中配置静态文件访问
location可以配置多个,匹配最精确的,
location /static {
root /upload;
index index.html index.htm;
expires 30d;
access_log off;
}
配置server_name
server_name app.domain.com;
配置反向代理1 (负载均衡)
upstream app{
ip_hash;
server 192.168.2.11:7010;
server 192.168.2.12:7010;
}
server {
listen 80;
server_name app.domain.com;
location /app {
proxy_pass http://app;
#Proxy Settings
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
配置反向代理2
server {
listen 80;
server_name bbs.xxx.com;
location /{
proxy_pass http://bbs.xxx.com:9066/;
#Proxy Settings
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
如果从一台机器的特定端口(8088)跳转到nginx(80),可以配置Host的端口,以便代理后的地址加端口
#Proxy Settings
proxy_set_header Host 12.34.56.78:8088;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
如果客户访问https请求到web服务器,到app服务器变成http请求,
或者
如果客户访问https地址,通过加密网关到web服务器变成http请求,到app也是http请求
做如下配置
#Proxy Settings
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto https;#一般这写的是$scheme,这直接写常量了
另外一个参数
proxy_redirect
Nginx配置SSI
http://happyqing.iteye.com/blog/2165664
让Nginx的SSI支持相对路径
http://happyqing.iteye.com/blog/2165665
Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
http://freeloda.blog.51cto.com/2033581/1288553/
参考:
http://my.oschina.net/duxuefeng/blog/34880
http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html