nginx配置文件(亲测,智能餐厅项目使用)

Nginx 与 tomcat 反向代理配置

  由于本人资金有限,所以经常需要一个服务器中同时运行多个网址,但是问题来了,域名解析是只能80端口进入的,不支持其他端口,而且也不能带后缀,所以如何让多个网址都能进行域名解析成了一个问题,后面百度发现有反向代理这个功能,但是一般Nginx服务器的方向代理教程都是教你如何指向一个虚拟目录的,这个对于用tomcat的人来说我不知道到底能不能行,反正我是没有成功配置过,不过后来发现也可以直接指向网路地址,废话少说,上配置

首先说明,本配置基于Nginx 1.8.0,其他版本的情况不清楚,需要自己测试

  首先下载Nginx 1.8.0,Nginx 下载地址下载好后解压(windows上面是直接解压,其他系统的不清楚,不过估计也差不多),然后进入目录conf,打开nginx.conf,进行编辑。

  现在的情况是tomcat占用8080端口,web程序路径为localhost:8080/blog,而我们的目标就是要利用Nginx的反向代理,使用localhost直接访问到localhost:8080/blog,当然如果有域名和服务器也可以用你的域名和服务器测试。

主要配置如下(nginx.conf)

server  
 {
     listen 80;
     server_name localhost;
     location /blog/ {
     proxy_redirect off;
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For     $http_x_forwarded_for; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_pass http://localhost:8080/blog/;
            sub_filter_once off;
     }
     location / {
     proxy_redirect off;
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For $http_x_forwarded_for; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_pass http://localhost:8080/blog/;
            sub_filter_once off;
     }
 
 
     access_log logs/blog.log;
 }

server代表着一个监听服务,listen代表着的监听端口,这里是80(http默认端口),servername代表着要被监听的名字,我们这里是localhost(域名),例如我的域名是www.raye.wang就需要填写: 
servername www.raye.wang

注意

一个很现实的情况是,别人有可能是通过www.raye.wang 来访问,也有可能是通过raye.wang 来访问,所以最好建立2个service,当然如果有其他更好的办法也请不啬赐教

location /blog/ 这个配置是为了防止web程序指定了完整目录而配置的,结果就是会将localhost/blog/继续转发成为localhost:8080/blog,而不是localhost:8080/blog/blog/,当然这个可以根据具体情况配置,简单来说真正的匹配规则就是server_name+location,之所以要把/blog/放前面是为了防止其他先匹配到,比如location / ,Nginx一旦匹配上就不会再匹配下一个了。

proxy_pass 很显然就是跳转的地址了,这个就必须特别了说明了,下面的location很明显是匹配所有localhost/的了,一般这个都是放在最后面的。

access_log就是记录日志的配置,这个无需多说,至于其他配置,我也没有具体搞清楚。

好了现在运行Nginx.exe之后就能进行反向代理了,注意,这个运行后只会闪烁一个黑框,如果任务管理器里面发现2个Nginx线程,说明运行成功了。

百说不如一试,自己配置试试吧

另外附上我的nginx.conf

 

worker_processes  1;
 
 
events {  
    worker_connections  1024;
}
 
http {  
     include       mime.types;
    default_type  application/octet-stream;
    sendfile on;
    keepalive_timeout 65;
    gzip on;
    client_max_body_size 50m;
    client_body_buffer_size 256k;
    client_header_timeout 3m;
    client_body_timeout 3m;
    send_timeout 3m;
    proxy_connect_timeout 300s;
    proxy_read_timeout 300s;
    proxy_send_timeout 300s;
    proxy_buffer_size 64k;
    proxy_buffers 4 32k;
    proxy_busy_buffers_size 64k;
    proxy_temp_file_write_size 64k;
    proxy_ignore_client_abort on;
 
 server
 {
     listen 80;
     server_name localhost;
     location /blog/ {
   proxy_redirect off;
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $http_x_forwarded_for; 
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_pass http://localhost:8080/blog/;
            sub_filter_once off;
     }
     location / {
   proxy_redirect off;
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $http_x_forwarded_for; 
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_pass http://localhost:8080/blog/;
            sub_filter_once off;
     }
     access_log logs/blog.log;
 }
}
 

 

文章出处:https://blog.csdn.net/chajinglong/article/details/52795627

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值