cancel
Showing results for 
Search instead for 
Did you mean: 

Web dispatcher redirects to Message Server

Former Member
0 Kudos

Hello SDN members.

Iu2019m using web dispatcher in front of a ABAP+JAVA installation. When Iu2019m tracing (HTTP) requests from the portal that are aimed to the ABAP WAS (usually requests to the webgui service) I can see the following:

1. the request are first directed to port 8100 (message server)

2. and then redirected to port 8000 (its)

Is this normal? Iu2019m aware that the Web Dispatcher uses the message server for information regarding load balancing, but is this redirect necessary? If not, how can I avoid it? From what i have seen in the SAP documentation, Web Dispatcher sends the requests to the ICM directly. Maybe I am missing something here.

Thank you very much for your time.

giorgos.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

Maybe I didnu2019t use the right term. The request is forwarded to the Message Server (I guess from the Web dispatcher that is why I used that term) and then it is redirected to the ITS (I guess from the message server).

The trace is as follows (3 timestamps)

+ 1.031	GET	304	image/gif
http://xxx.xxx.gr:50000/irj/portalapps/....

+ 1.119	POST	301	{Redirect to http://xxx.xxx.gr:8000/sap(ZT1...=)/bc/gui/sap/its/webgui}
http://xxx.xxx.gr:8100/sap(ZT1...=)/bc/gui/sap/its/webgui

+ 1.127	GET	200	text/html; charset=utf-8	
http://xxx.xxx.gr:8000/sap(ZT1...=)/bc/gui/sap/its/webgui

The parameter you mentioned is empty.

allaine_tabilin
Explorer
0 Kudos

Hi Giorgos,

That's correct (that is, what you observed).

1. Once the request is made going to your web dispatcher, the web dispatcher forwards it to the message server (or technically, to the port number defined by your parameter ms/http_port seen on your web dispatcher profile).

2. It goes there to verify which ICM (or ITS) instance application server is available (it will check the available server in the logon group --- the one defined on transaction SMLG plus the "hidden" logon groups !DIAG and !J2EE ... depending on your configuration).

3. Once this is done, further communications are done on the ICM (ITS) instance application server

Thanks,

Allaine

allaine_tabilin
Explorer
0 Kudos

Hi,

When you said " but is this redirect necessary? If not, how can I avoid it?" ...

Do you mean that you do not want the HTTP code 301 for this?

(the redirect or code 301 is necessary for web dispatcher but I'm not sure if this is what you meant ..."

Thanks,

Allaine

Former Member
0 Kudos

Hello Allaine,

Thanks for your answer. It really clarifies the process. However I would like to elaborate a bit on a gray (for me) spot:

SAP suggests that you should use Web Dispatcher as an HTTP Load Balancer (especially when a portal is used) and not the Message Server. Since that is what we are trying to do, I expected not to see any u201Cactionu201D on the Message Server port (8100 - even though the Web Dispatcher uses the Message Server for information regarding available servers, I thought that this would happen in the background). My expectations are based on the Web Dispatcher documentation where it is stated that:

Unlike [HTTP Load Balancing Using the SAP Message Server|http://help.sap.com/saphelp_nw70ehp1/helpdata/en/47/c5935087b62d66e10000000a42189c/content.htm], redirects are not executed when the SAP Web dispatcher is used. This avoids the associated disadvantages (several IP addresses must be known, book marking is not possible, authentication after changing the application server).

So, what you meant in your post is that when the message server is accessed the HTTP balancing has already taken place? Or not?

Also as stated in Note [857596|https://service.sap.com/sap/support/notes/857596] HTTP 301 is sent by the Message Server when Load Balancing takes place. Thatu2019s why I said I want to avoid the redirection . I would like to comply with SAP directive to use the Web Dispatcher for HTTP Load Balancing and not the Message Server.

any suggestion is valuable!

Giorgos.

Former Member
0 Kudos

Hi,

I still don't understand how you can get the redirects.

I use a lot the SAP web dispatcher a load balancer reverse proxy and it runs exactly as described in help.sap.com.

I don't have ant redirects from the user web browser if I have not decided it with the icm/http/redirect parameter.

I think you must have an erreor in your web dispatcher profile file (usually sapwebdisp.pfl).

Can you post these parameters values

rdisp/mshost =

ms/http_port =

icm/server_port_0 =

icm/server_port_1 =

icm/HTTPS/verify_client =

wdisp/add_clientprotocol_header =

wdisp/add_xforwardedfor_header =

wdisp/handle_webdisp_ap_header =

icm/HTTP/auth_0 =

wdisp/ssl_encrypt =

icm/HTTP/redirect_x

Regards,

Olivier

Former Member
0 Kudos

Hello Olivier.

Here is the profile file:


SAPSYSTEMNAME = WBD
SAPGLOBALHOST = bportal
SAPLOCALHOSTFULL = bportal.mydomain.gr
icm/host_name_full = bportal.mydomain.gr
SAPSYSTEM = 01
INSTANCE_NAME = W01
DIR_CT_RUN = $(DIR_EXE_ROOT)\$(OS_UNICODE)\NTAMD64
DIR_EXECUTABLE = $(DIR_CT_RUN)
#-----------------------------------------------------------------------
# Accesssability of Message Server
#-----------------------------------------------------------------------
rdisp/mshost = ethnobwd.mydomain.gr
ms/http_port = 8100

#-----------------------------------------------------------------------
# Configuration for medium scenario
#-----------------------------------------------------------------------
icm/max_conn = 500
icm/max_sockets = 1024
icm/req_queue_len = 500
icm/min_threads = 10
icm/max_threads = 50
mpi/total_size_MB = 80
wdisp/HTTPS/sticky_mask = 255.255.255.255
#-----------------------------------------------------------------------
# SAP Web Dispatcher Ports
#-----------------------------------------------------------------------
icm/server_port_0 = PROT=HTTP,PORT=80,TIMEOUT=30,PROCTIMEOUT=600,HOST=bportal.mydomain.gr
#-----------------------------------------------------------------------
# SAP Web Dispatcher Web Configuration
#-----------------------------------------------------------------------
icm/HTTP/redirect_0 = PREFIX=/mydomain.gr, TO=/irj/portal

Former Member
0 Kudos

Hi Giorgos,

>icm/HTTP/redirect_0 = PREFIX=/mydomain.gr, TO=/irj/portal

Well, you do have a redirect command and it seems suspect to me...

I guess you want to acces the portal when using the root URL ?

If I am right, this is the command I would use for that :

icm/HTTP/redirect_0 = PREFIX=/,FOR=bportal.mydomain.gr,TO=/irj/portal

Regards,

Olivier

Former Member
0 Kudos

Hello Olivier,

You guessed right about the redirect - but since your first post we have made several traces without this line. And the results were the same.

We also replaced the line with the one you suggested. The redirect works (thanks for the alternative - we might also start using it since it looks more appropriate) but nothing new with the situation at hand.

Since I seem to be running into a dead-end I would try to rephrase the problem:

There is a system where the message server is used for HTTP balancing. It is configured as stated in SAP documentation. At some point the Web Dispatcher is installed and it is configured to handle the HTTP balancing (knows the port where to accept the HTTP requests, knows the port of the Message Server so it can get server information). When the need arises, the request is executed successfully. However the HTTP trace shows the involvement of the Message Server (see previous post) in a way that I didnu2019t expect. This involvement although not necessarily wrong, however makes me wonder if our configuration is indeed right.

regards,

giorgos

Former Member
0 Kudos

Hello again Giorgos,

When reading again your first messages with the traces, it seems to me that you have the following architecture :

web dispatcher --> Portal --> ECC

and that you want to access ECC with webgui/ITS.

I suspect now it is the portal that may use the message server to do http load balancing to ECC.

Regards,

Olivier

Former Member
0 Kudos

Hello Olivier,

The architecture is as you described it.

So you suggest that maybe it is a portal issue?

any way to make sure?

regards,

giorgos.

Former Member
0 Kudos

Hi again,

>any way to make sure?

I would take

HTTP traces betweeen web browser and web dispatcher

HTTP traces betweeen web dispatcher and portal

HTTP traces betweeen portal and ECC

With the complete view, you will surely know what's going on !

Regards,

Olivier

Former Member
0 Kudos

Hello Olivier,

The problem was indeed in the portal. You were right! Didn't have to take traces though - run into it accidentally. The backend BW system wasn't configured properly in the Portal System Landscape.

You 've been very helpful.

Thanks.

giorgos.

Former Member
0 Kudos

Hi Giorgos,

I'm glad that your problem is solved.

It seemed weird at the beginning !

Regards,

Olivier

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

The Web dispatcher is supposed to do http redirects only if you configure it to do it with

icm/HTTP/redirect_x parameters. Other wise it acts as load balancer reverse proxy.

I think you may have problems in your web dispatcher parameter file.

Regards,

Olivier