Web调度程序转发问题

2020-09-14 22:16发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我的Web Dispatcher配置有问题。 我的情况如下:

SAP ABAP服务器-内部服务器

SAP Web Dispatcher 753-DMZ

外部.NET服务器-公共Internet站点

防火墙允许从Web Dispatcher服务器到ABAP服务器的ICM和ABAP服务器的消息服务器的HTTP端口。 Web Dispatcher的HTTPS端口允许连接到SAP ABAP服务器。 可从Web Dispatcher服务器访问外部URL。

我想要实现的是,如果我将Web Dispatcher链接放在SAP ABAP Server中,例如https://webdisp:48000,它应该打开 https://test.externalsite.com/url/url

它在Web Dispatcher服务器中正确转发,但是当我在SAP ABAP Server中进行转发时,它正在尝试连接 https://test.externalsite.com :443。 如果我将externalsite参数更改为其他站点,则SAP ABAP Server尝试连接到该站点。

我无意打开内部网站访问Internet,但是我被困于配置Web调度程序。

在Web Disp配置文件中,我使用了以下参数

 icm/HTTP/redirect_0 = PREFIX =/,FROM = *,PROT = HTTPS,HOST = test.externalsite.com
 wdisp/system_0 = SID = EXT,EXTSRV = https://test.externalsite.com,STICKY = true,SSL_ENCRYPT = 2
 ssl/密码套件= 199:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 ssl/client_ciphersuites = 214:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 

我还尝试添加带有以下参数的修改文件;

如果%{SERVER_PORT} = 443,并且<%>如果%{PATH}重新匹配"/img/EXT"
 开始
 RegIRewriteUrl ^ EXT(。*)https://test.externalsite.com/url/url
 

,但是有同样的问题。

内部SAP ABAP服务器一直尝试访问外部服务器。

最好的问候

Kaan

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我的Web Dispatcher配置有问题。 我的情况如下:

SAP ABAP服务器-内部服务器

SAP Web Dispatcher 753-DMZ

外部.NET服务器-公共Internet站点

防火墙允许从Web Dispatcher服务器到ABAP服务器的ICM和ABAP服务器的消息服务器的HTTP端口。 Web Dispatcher的HTTPS端口允许连接到SAP ABAP服务器。 可从Web Dispatcher服务器访问外部URL。

我想要实现的是,如果我将Web Dispatcher链接放在SAP ABAP Server中,例如https://webdisp:48000,它应该打开 https://test.externalsite.com/url/url

它在Web Dispatcher服务器中正确转发,但是当我在SAP ABAP Server中进行转发时,它正在尝试连接 https://test.externalsite.com :443。 如果我将externalsite参数更改为其他站点,则SAP ABAP Server尝试连接到该站点。

我无意打开内部网站访问Internet,但是我被困于配置Web调度程序。

在Web Disp配置文件中,我使用了以下参数

 icm/HTTP/redirect_0 = PREFIX =/,FROM = *,PROT = HTTPS,HOST = test.externalsite.com
 wdisp/system_0 = SID = EXT,EXTSRV = https://test.externalsite.com,STICKY = true,SSL_ENCRYPT = 2
 ssl/密码套件= 199:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 ssl/client_ciphersuites = 214:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 

我还尝试添加带有以下参数的修改文件;

如果%{SERVER_PORT} = 443,并且<%>如果%{PATH}重新匹配"/img/EXT"
 开始
 RegIRewriteUrl ^ EXT(。*)https://test.externalsite.com/url/url
 

,但是有同样的问题。

内部SAP ABAP服务器一直尝试访问外部服务器。

最好的问候

Kaan

付费偷看设置
发送
4条回答
骆驼绵羊
1楼-- · 2020-09-14 22:43

你好Kaan,

参数" icm/HTTP/redirect_0"不完整,没有任何作用。

您的修改规则是绕过Web Dispatcher,将客户端直接重定向到外部网站,如果我理解正确的话,这不是您想要的。

除了" wdisp/system_0"参数之外,您是否还在Web Dispatcher配置文件中设置了其他" wdisp/system_X"参数?

如果否,则应删除修改规则和不完整的重定向参数,并将ABAP系统指向Web Dispatcher主机和端口。 我相信那应该可以。

Web Dispatcher充当中介(就像代理一样),因此您在任何地方都看不到外部网站的地址。 您应该只看到Web Dispatcher地址,但是看到外部网站的内容。

此致

艾萨斯州

落灬小鱼
2楼-- · 2020-09-14 22:50

你好

我将公开给出我的目标系统。 现在,您可以看到我的确切参数。 我正在为您提供我的WDP配置文件,SM59屏幕截图和2级的完整SMICM跟踪。

 SAPSYSTEMNAME = D00
 SAPGLOBALHOST =阴影WD
 SAPSYSTEM = 00
 INSTANCE_NAME = W00
 DIR_CT_RUN = $(DIR_EXE_ROOT)\ $(OS_UNICODE)\ NTAMD64
 DIR_EXECUTABLE = $(DIR_CT_RUN)
 DIR_PROFILE = \\ Shade-WD \ sapmnt \ D00 \ SYS \ profile
 _PF = $(DIR_PROFILE)\ D00_W00_Shade-WD
 SETENV_00 = PATH = $(DIR_EXECUTABLE);%PATH%
 #-------------------------------------------------  ----------------------
 #后端系统配置
 #-------------------------------------------------  ----------------------
 #wdisp/system_0 = SID = T00,MSHOST =阴影树液,MSSPORT = 44401,SSL_ENCRYPT = 1,SRCURL =/sap
 #rdisp/mshost = shade-sap.shade.intra
 #ms/https_port = 44401
 wdisp/server_info_protocol = https
 wdisp/group_info_protocol = https
 wdisp/url_map_protocol = https
 wdisp/ping_protocol = https
 #-------------------------------------------------  ----------------------
 #配置最大并发连接数
 #-------------------------------------------------  ----------------------
 icm/max_conn = 500
 #-------------------------------------------------  ----------------------
 #SAP Web分派器
 #-------------------------------------------------  ----------------------
 icm/server_port_0 = PROT = HTTPS,PORT = 54300
 #-------------------------------------------------  ----------------------
 #SAP Web Dispatcher管理
 #-------------------------------------------------  ----------------------
 icm/HTTP/admin_0 = PREFIX =/sap/wdisp/admin,DOCROOT = $(DIR_DATA)$(DIR_SEP)icmandir,AUTHFILE = $(icm/authfile)
 #-------------------------------------------------  ----------------------
 #启动webdispatcher
 #-------------------------------------------------  ----------------------
 _WD = $(DIR_EXECUTABLE)\ sapwebdisp $(FT_EXE)
 Restart_Program_00 =本地$(_ WD)pf = $(_ PF)
 SETENV_01 = SECUDIR = $(DIR_INSTANCE)/sec
 #icm/HTTP/redirect_0 = PREFIX =/,FROM = *,PROT = HTTPS,HOST = test.merchantsafeunipay.com
 wdisp/system_0 = SID = EXT,EXTSRV = https://test.merchantsafeunipay.com,STICKY = true,SSL_ENCRYPT = 2,SRCURL =/
 #icm/HTTP/mod_0 = PREFIX =/,FILE = C:\ usr \ sap \ D00 \ W00 \ sec \ D00Rule.txt
 ssl/server_cache_size =(min($(icm/max_conn)* 4,100000))
 ssl/密码套件= 199:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 ssl/client_ciphersuites = 214:PFS:HIGH:MEDIUM:+ e3DES :: EC_P256:EC_HIGH
 

SMICM日志

https://pastebin.com/ZcENYuLT

最好的问候

Kaan

悠然的二货
3楼-- · 2020-09-14 22:55

你好Kaan,

感谢您提供信息。

完整的ICM跟踪揭示了问题所在。

"连接测试"请求在SM59目标位置配置的根URI"/"。

然后,ICM从外部网站接收重定向:

 [Thr 1824] HTTP响应(原始)[1/185/1]:
[Thr 1824] HTTP/1.1 302找到<<<<<<<重定向响应
[Thr 1824]日期: 星期四,2018年8月9日15:50:47 GMT
[Thr 1824]服务器:Apache <<<<<<<外部网站必须在Apache
上运行[Thr 1824] strict-transport-security:max-age = 31536000; includeSubDomains
[Thr 1824]位置:https://test.merchantsafeunipay.com/msu/admin/login <<<重定向目标
[Thr 1824]内容长度:235
[Thr 1824]连接 :关闭
[Thr 1824]内容类型:text/html; charset = iso-8859-1
[Thr 1824] x-xss-protection:1; 模式=块
[Thr 1824] x内容类型选项:nosniff
[Thr 1824] set-cookie:sapextlb_EXT = SAP_WDISP_EXTSRV_0_4C614F967D01CBC0; 路径=/

ABAP处理重定向并尝试直接打开与外部网站的连接。

我相信您只需要确认哪个是要在外部网站上访问的正确URI,就不会发送重定向。

或者可能仅在"连接测试"中出现此问题,ABAP应用程序将进行正确的调用,而无需更改SM59目的地。

此致

艾萨斯州

clever101
4楼-- · 2020-09-14 22:51

你好Kaan,

重定向来自外部网站,而不是SAP组件。

唯一避免重定向的方法是调用不会导致重定向的URI(URL)。

例如,不要在" SM59目标"处将"路径前缀"定义为空值,而在此处定义最终路径(例如,"/img/some/resource"之类)。

此致

艾萨斯州

一周热门 更多>