`
lvjun106
  • 浏览: 438120 次
  • 性别: Icon_minigender_1
  • 来自: 芜湖
社区版块
存档分类
最新评论

解决nginx反向代理web service的soap:address location问题

 
阅读更多
package com.ws.service;  
  
public interface IUserService  
{  
    public String getUserName(String id);  
}  

 

package com.ws.service;  
  
import javax.jws.WebMethod;  
import javax.jws.WebParam;  
import javax.jws.WebService;  
  
@WebService  
public class UserService implements IUserService  
{  
    @WebMethod  
    public String getUserName(@WebParam(name="id") String id)  
    {  
        return "User:" + id;  
    }  
}  

 

package com.ws.service;  
  
import javax.xml.ws.Endpoint;  
  
public class Server  
{  
    public static void main(String[] args)  
    {  
        Endpoint.publish("http://0.0.0.0:6633/api/v1/user", new UserService());  
        System.out.println("ws startup ok on port " + 6633);  
    }  
}  

 ws的端口为6633

 

访问地址为:http://192.168.100.95:6633/api/v1/user?wsdl

 

然后,nginx的配置如下:

 

upstream webservice {  
    server 192.168.10.95:6633;  
}  
server {  
    listen       6633;  
    location / {  
        proxy_pass http://webservice;  
    }  
}  

 nginx地址为:192.168.2.123

 

然后访问代理地址:http://192.168.2.123:6633/api/v1/user?wsdl

结果如下

这里的地址明显错误。

 

解决方法如下

nginx配置改为:

upstream webservice {  
    server 192.168.100.95:6633;  
}  
server {  
    listen       6633;  
    location / {  
                proxy_set_header Host $host:$server_port;  
        proxy_pass http://webservice;  
    }  
}  

 原因在于如果没有配置

 

  1. proxy_set_header Host $host:$server_port;  

 

则,nginx反向代理到后台,传的Host http头为

 

 

Host=webservice

分享到:
评论

相关推荐

    Cobalt_Strike_C2隐匿多级nginx反向代理1

    1. 在第一层 Nginx 反向代理节点(例如:21.67.38.47)上配置 Nginx,设置监听 80 端口,并将所有流入的 80 端口流量转发到第二层 Nginx 反向代理的域名(如 host.second.com:80)。 ``` upstream default_pools...

    Web APP 如何实现类似Nginx反向代理转发功能-zhangyannan1

    Web APP 实现类似 Nginx 反向代理转发功能 Web APP 如何实现类似 Nginx 反向代理转发功能是指在 Web 应用程序中实现反向代理转发的功能,以便将用户的请求转发到其他服务器或应用程序上。反向代理转发是一种常用的...

    nginx反向代理导致session失效的问题解决

    两边通过同一个nginx进行反向代理,nginx配置大致如下, location /health/ { proxy_pass http://192.168.40.159:8081/health/; #无问题的配置 } location /health-dev/ { proxy_pass ...

    Nginx 反向代理解决JS跨域

    通过使用Nginx 反向代理来解决JS跨域问题 http://blog.csdn.net/mzhaocai/article/details/79238338

    Nginx反向代理不能访问项目的解决办法

    如果以上步骤均未解决问题,建议查看Nginx和Tomcat的日志文件,寻找错误提示或异常信息。 ### 查看Nginx日志: ```bash tail -f /var/log/nginx/error.log ``` ### 查看Tomcat日志: ```bash tail -f /usr/java/...

    42 2 Nginx反向代理视频

    教程视频:Nginx反向代理web服务器,后台java控制连接访问。

    Nginx反向代理服务器配置基础教程

    在现代Web服务部署中,Nginx作为一款高性能的HTTP和反向代理Web服务器,被广泛应用于负载均衡、反向代理以及静态资源服务等多个场景。本文将详细介绍如何在CentOS 6.6 x64环境下搭建Nginx反向代理服务器,并通过具体...

    一分钟搞定 Nginx反向代理 nginx域名代理

    location / { proxy_pass http://192.168.45.1:8045; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_...

    docker 安装 wordpress,通过nginx反向代理,绑定域名,配置https

    我们需要配置 Nginx 反向代理,以便访问 WordPress 站点。我们可以在 nginx.conf 文件中添加以下配置: ``` server { listen 80; server_name ikeguang.com; location / { proxy_pass http://localhost:8080; ...

    https通信nginx反向代理443端口

    在IT行业中,HTTPS通信是确保网站数据安全传输的重要手段,而Nginx作为一款高性能的HTTP和反向代理服务器,常被用来实现这种安全通信。本文将深入探讨如何通过Nginx配置HTTPS服务器,实现443端口的反向代理,以及与...

    nginx正向代理与反向代理详解

    本文将详细介绍Nginx如何实现正向代理和反向代理,以及这两种代理方式的应用场景。 **正向代理** 正向代理的主要作用是让内部网络中的设备(如服务器B)通过一个具有外部网络访问权限的设备(如服务器A)来访问...

    利用Nginx反向代理解决跨域问题详解

    问题 在之前的分享的跨域资源共享的文章中,有提到... 基于与合作方后台的配合,利用nginx方向代理来满足浏览器的同源策略来实现跨域 实现方法 反向代理概念 反向代理(Reverse Proxy)方式是指以代理服务器来接受In

    nginx多网站反向代理

    nginx多网站反向代理

    windows下配置nginx反向代理tomcat

    ### Windows 下配置 Nginx 反向代理 Tomcat 在 Windows 环境下配置 Nginx 作为 Tomcat 的反向代理服务器是一项常见的任务,主要用于实现负载均衡、提高安全性及提升性能等目的。本文将从下载 Nginx 开始,详细介绍...

    nginx反向代理服务

    【Nginx反向代理服务】是网络服务器配置中的一个重要概念,主要应用于负载均衡和安全性增强。Nginx是一款高性能的HTTP和反向代理服务器,以其高效、稳定和低内存占用而闻名。在Linux系统中部署Nginx,可以极大地提升...

    Nginx反向代理Tomcat服务器.pdf

    Nginx反向代理Tomcat服务器的知识点主要包括以下几个方面: 1. 反向代理的概念: 反向代理是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给...

    nginx反向代理配置

    nginx反向代理配置 动静分离不错的代理

    nginx 反向代理.docx

    ### Nginx 反向代理知识点详解 #### 一、代理概述 代理是一种常见的网络通信方式,它在客户端与服务器之间架设了一座桥梁。在实际应用中,代理分为正向代理和反向代理两种类型。 **代理的概念:** 在Java设计模式...

    nginx+tomcat反向代理安装配置

    在IT行业中,构建高效、可扩展的Web服务是至关重要的,而`nginx`和`tomcat`的结合使用就是一种常见的解决方案。`nginx`作为一款高性能的反向代理服务器和负载均衡器,常用于处理静态资源,而`tomcat`则作为Java应用...

    Nginx反向代理工作原理简介与配置详解-李雄

    1. 安装Nginx:在Linux系统上,可以通过包管理器(如apt-get或yum)来安装。 2. 配置服务器块:在Nginx的配置文件(通常为/etc/nginx/nginx.conf或/etc/nginx/sites-available/default)中,创建一个新的服务器块。...

Global site tag (gtag.js) - Google Analytics