IP address lost in Weblogic proxy plugin

          Hi,
          We have 4 web servers that forward requests for jsps to 10 weblogic instances
          working in a cluster. The web servers have IPlanet with weblogic proxy plugin.
          One of the jsps has logic to retrieve the client's IP address and then return
          the name of the country to which the IP address belongs. But since the jsp always
          receives requests from one of the 4 web servers on the same LAN, it gets only
          the internal IP address of the web server and returns no country code. To retrieve
          the IP address of the caller in the jsp, I'm using
          ipAddress = request.getRemoteAddr();
          How can I make my jsp know the actual source IP address of the client (i.e the
          end user)?
          Any help would be appreciated.
          Dipak Jha
          

Try increasing the "AcceptBackLog" settings on the weblogic server and then verify for any changed behavior.
Raise the Accept Backlog value from the default by 25 percent. Continue increasing the value by 25 percent until the messages cease to appear.
Link :[http://e-docs.bea.com/wls/docs81/perform/WLSTuning.html#1136287]

Similar Messages

  • WebLogic proxy plugin: getPooledConn: No more connections in the pool

    Hi,
    We have weblogic proxy plugin installed in Sun One web server. but frequently we are getting following errors in proxy log:
    <1670612410085901> attempt #0 out of a max of 5
    <1670612410085901> Trying a pooled connection for '<IP>/<port>/<port>'
    <1670612410085901> getPooledConn: No more connections in the pool for Host [<IP>] Port[<port>] SecurePort[<port>]
    Can anybody please tell how this proxy plugin manages connection pools? I don't find any minimum / maximum number of conection to mention anywhere or how exactly it works?

    Try increasing the "AcceptBackLog" settings on the weblogic server and then verify for any changed behavior.
    Raise the Accept Backlog value from the default by 25 percent. Continue increasing the value by 25 percent until the messages cease to appear.
    Link :[http://e-docs.bea.com/wls/docs81/perform/WLSTuning.html#1136287]

  • Weblogic proxy plugin closes keep-alive connections to clients randomly

    In short we have following arhitecture:
    clients ---> wl proxy plugin 1 ----> weblogic 1
    clients ---> wl proxy plugin 2 ----> weblogic 2
    Beacuse of the application/installation specific requirements, we are not using failover, one wl proxy always forwards requests to one weblogic (simple configuration).
    Application is TR-069 protocol based (SOAP over HTTP) so it very much relays on persistence TCP connections (Connection: keep-alive). This TCP persistence has to work correctly in order that TR-069 messages are exchanged in required order, otherwise we have a error on application layer.
    Here and there we've noticed applications errors which suggest that we have some problems in TCP connection between the client and the weblogic server. After sniffing, we've noticed that weblogic proxy plugin (Apache) randomly, or because of some other reason we do not know, decides to close TCP connection to client, even app on weblogic did not request so ???
    As a result, client opens new connection to the server with new TR-069 session and it gets bounced beacuse it allready has one open on weblogic server.
    We've sniffed, traced everything we could, we were searching for patterns in time, etc... but we can not find the reason why proxy plugin decides to close the connection to the client (not to the weblogic server).
    Trace (replaced sensitive information):
    Thu Apr 29 15:05:50 2010 <958012725463463784> URL::parseHeaders: CompleteStatusLine set to [HTTP/1.1 200 OK]
    Thu Apr 29 15:05:50 2010 <958012725463463784> URL::parseHeaders: StatusLine set to [200 OK]
    Thu Apr 29 15:05:50 2010 <958012725463463784> parsed all headers OK
    Thu Apr 29 15:05:50 2010 <958012725463463784> sendResponse() : r->status = '200'
    Thu Apr 29 15:05:50 2010 <958012725463463784> canRecycle: conn=1 status=200 isKA=1 clen=545 isCTE=0
    Thu Apr 29 15:05:50 2010 <958012725463463784> closeConn: pooling for '$IP$/$PORT$'
    Thu Apr 29 15:05:50 2010 <958012725463463784> request [$URL$] processed successfully..................
    !!!! Now it closes the TCP connection and inserts "Connection: close" HTTP header !!!
    WL proxy plugin conf params are:
    WebLogicCluster $IP$:$PORT$
    DynamicServerList OFF
    KeepAliveTimeout 90
    MaxKeepAliveRequests 0
    KeepAliveSecs 55
    Apache worker configuration is:
    <IfModule mpm_worker_module>
    PidFile var/run/httpd-worker.pid
    LockFile var/run/accept-worker.lock
    StartServers 2
    MinSpareThreads 25
    MaxSpareThreads 75
    ThreadLimit 200
    ThreadsPerChild 200
    MaxClients 2000
    MaxRequestsPerChild 0
    AcceptMutex pthread
    </IfModule>
    Why weblogic proxy plugin ignores Keep-alive directive and decides to close connection to the client by itself?
    Any help?

    If a WebLogic Server instance listed in either the WebLogicCluster parameter or a dynamic cluster list returned from WebLogic Server fails, the failed server is marked as "bad" and the plug-in attempts to connect to the next server in the list.
    MaxSkipTime sets the amount of time after which the plug-in will retry the server marked as "bad." The plug-in attempts to connect to a new server in the list each time a unique request is received (that is, a request without a cookie).
    Note: The MaxSkips parameter has been deprecated as the MaxSkipTime parameter.
    See also here: http://download-llnw.oracle.com/docs/cd/E13222_01/wls/docs81/plugins/plugin_params.html
    You said the problem arises under significant load. Maybe, it is wise to tune the number file descriptor's on your operating system. HTTP connections are nothing more than TCP sockets on the operating system. All modern operating systems treat sockets as a specialized form of file access and use data structures called file descriptors to track open sockets and files for an operating system process. To control resource usage for processes on the machine, the operating system restricts the number of open file descriptors per process. You should be aware that all TCP connections that have been gracefully closed by an application will go into what is known as the TIME_WAIT state before being discarded by the operating system.
    On most unix systems you can use netstat -a | grep TIME_WAIT | wc -l to detemine the number of socket in time_wait state. You have to check with your system adminstrator how to tune the tcp_time_wait_interval. On solaris you can use: /usr/sbin/ndd -set /dev/tcp tcp_time_wait_interval 60000

  • Round Robin was not happening for my cluster with WebLogic Proxy Plugin

              Hi,
              I configured my cluster with software load balancer, HTTPClusterServlet. By default,
              it is load balancing with Round Robin Algorithm. That means one HTTP request
              goes to server1, and the other HTTP request goes to server2. However, it is not
              what I can see no matter for the requests in one HTTP session or not.
              Say I open two browser, and log into my application with two different users,
              one is "cyang", the other is "xpression". Then the HTTP request (for servlet/jsp)
              from two browsers always go to the same server1, server2 is not invoked at all.
              I did see one time, with only one session (one browser with "xPression" user log
              in), the most requests go to server1, suddenly I am brough into log in page, then
              I noticed that the request for "xPression" moved to server2 although server1 is
              still alive. Therefore, at most, I can say it is "Random", rather than "Round
              Robin".
              What is the real meaning for HTTP servlet/jsp load balancing algorithm? Does
              Round Robin mean request go to each server in turns? Does it have to be different
              session or it can be within one session?
              

    It should be sticky. If not, then bug / config error.
              Peace,
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com/coherence.jsp
              Tangosol Coherence: Clustered Replicated Cache for Weblogic
              "Carole Yang" <[email protected]> wrote in message
              news:[email protected]...
              >
              > Thanks. Yeh, with two kind of browsers, I do see the request goes to
              different
              > servers.
              >
              > That goes back to the original question. Does "Round Robin" here fall
              into the
              > scope of a HTTP session. However, that is not always true for my tests.
              Sometimes,
              > HTTP request just randomly goes to another server while in the same HTTP
              session.
              > It is not sticky to one particular server during one session.
              >
              >
              >
              > --Carole
              >
              >
              > "Cameron Purdy" <[email protected]> wrote:
              > >Has to be different sessions to go to different machines.
              > >
              > >Best way to test is to run one session in IE and the other in Mozilla
              > >or
              > >Netscape.
              > >
              > >Peace,
              > >
              > >Cameron Purdy
              > >Tangosol, Inc.
              > >http://www.tangosol.com/coherence.jsp
              > >Tangosol Coherence: Clustered Replicated Cache for Weblogic
              > >
              > >
              > >"Carole Yang" <[email protected]> wrote in message
              > >news:[email protected]...
              > >>
              > >> Hi,
              > >>
              > >> I configured my cluster with software load balancer,
              HTTPClusterServlet.
              > >By default,
              > >> it is load balancing with Round Robin Algorithm. That means one HTTP
              > >request
              > >> goes to server1, and the other HTTP request goes to server2. However,
              > >it
              > >is not
              > >> what I can see no matter for the requests in one HTTP session or not.
              > >>
              > >> Say I open two browser, and log into my application with two different
              > >users,
              > >> one is "cyang", the other is "xpression". Then the HTTP request (for
              > >servlet/jsp)
              > >> from two browsers always go to the same server1, server2 is not invoked
              > >at
              > >all.
              > >>
              > >> I did see one time, with only one session (one browser with "xPression"
              > >user log
              > >> in), the most requests go to server1, suddenly I am brough into log
              > >in
              > >page, then
              > >> I noticed that the request for "xPression" moved to server2 although
              > >server1 is
              > >> still alive. Therefore, at most, I can say it is "Random", rather
              > >than
              > >"Round
              > >> Robin".
              > >>
              > >> What is the real meaning for HTTP servlet/jsp load balancing algorithm?
              > >Does
              > >> Round Robin mean request go to each server in turns? Does it have
              > >to be
              > >different
              > >> session or it can be within one session?
              > >
              > >
              >
              

  • Hardware Load Balancers and Cluster WebLogic Proxy Plug-in setting

    Documentation states that we need to enable the Cluster WebLogic Proxy Plug-in setting when there is a proxy plugin or HttpClusterServlet configured.
    We used to have Weblogic Proxy plugin and the setting is still there, also the proxy was replaced by the hardware loadbalancer. Everything works normally and no one complained, but I would assume that WebLogic Proxy Plug-in setting should not be applicable any longer.
    Is it possibly harmful to have that setting there? Does it mean that the loadbalancer emulates WebLogic Proxy Plug-in and also need this set?
    Thank you

    The Weblogic Proxy Plug-in Enabled flag only affects the behavior of a WL proxy module (such as if you were using Apache to proxy to WL via the mod_wl.so module). The value controls what IP address is returned when you call request.getRemoteAddr() from your application. If not enabled, you will get the IP address of the web server that proxied the request. If enabled, you will get the remote client IP address (instead of the proxy IP address) facilitated by the WL-Proxy-Client-IP header. If you are no longer using a plug-in module, the setting will have no affect. Hope this helps...

  • BEA 10.2 proxy plugin

    Dear all,
    i don't know that i am a correct place, but i have a question about a bea weblogic proxy plugin.
    The situation is, that we have a BEA 10.2 32 bit application server in use, and want to use 64 bit iPlanet webserver. I have an error message when i try to start the 64 bit webserver with a 32bit proxy plugin, and think that i must use an 64Bit wl-proxy plugin. But i think so to, that the question is that would this work correctly?
    thanks for any help (link to a correct forum - maybe iplanet webserver?)
    regards,
    Ferenc Junkert

    This one has given me the run around for several days now. I
    had exactly the same condition. The fix, in my case, was as
    follows.
    Uninstall Shockwave Player. I used the 'sw_uninstaller.exe'
    file from the Adobe website as I had already downloaded it, but it
    should do just as well to run C:\
    Windows\System32\Macromed\Shockwave10\UNWISE.EXE or 'Adobe
    Shockwave Player' in 'Add/Remove Programs'.
    Once Shockwave Player is uninstalled run the latest Mozilla
    Firefox installation file over the top of the existing program even
    if you are running the latest version. Currently this is 'Firefox
    Setup 2.0.0.9.exe'.
    Once that is done I found that the Shockwave plugin installed
    correctly. It appears, if you need to reinstall Firefox for any
    reason, you also need to uninstall Shockwave (and probably Flash
    Player too) before the Adobe plugin(s) are reinstalled.

  • HttpClusterServlet Proxy Plugin problem - Weblogic Express 10

    Hi,
    I am using Weblogic Express 10 version. I am trying to configure HttpClusterServelet in one of my test machine.
    I have a Admin server and 3 Managed servers which are part of clusters. I have a test war file which is deployed on to the cluster.
    I am able to open the test war file application by hitting Managed servers URL's & Port no's
    for eg: http://hostname:portno/testapp
    Now I have created a war file with httpclusterserver features and deployed it to Admin server. (created web.xml & weblogic.xml inside WEB-INF directory and built it as war file and deployed it to Admin server)
    so practically whenever I hit the Admin server URL my request should be proxied to one of the three Managed server which are part of the cluster
    But when I try to open the application through admin server hostname and port no, I get below 403 exception on browser
    Error 403--Forbidden
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.4 403 Forbidden
    The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated. If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, it SHOULD describe the reason for the refusal in the entity. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
    Below is the content of my web.xml & weblogic.xml war file
    web.xml
    -bash-3.00$ more web.xml
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";>
    <web-app>
    <servlet>
    <servlet-name>HttpClusterServlet</servlet-name>
    <servlet-class>
    weblogic.servlet.proxy.HttpClusterServlet
    </servlet-class>
    <init-param>
    <param-name>WebLogicCluster</param-name>
    <param-value>
    ManagedSrv1_Hostname:PortNo|ManagedSrv2_Hostname:PortNo|ManagedSrv3_Hostname:PortNo
    </param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>HttpClusterServlet</servlet-name>
    <url-pattern>/</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>HttpClusterServlet</servlet-name>
    <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>HttpClusterServlet</servlet-name>
    <url-pattern>*.htm</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>HttpClusterServlet</servlet-name>
    <url-pattern>*.html</url-pattern>
    </servlet-mapping>
    </web-app>
    weblogic.xml
    <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/
    weblogic 810-web-jar.dtd">
    <weblogic-web-app>
    <context-root>/</context-root>
    </weblogic-web-app>
    Kindly advise on this problem.
    - - Weblogic Consultant

    Hi,
              Did you configure the replication correctly in the weblogic.xml?
              Also fill in the correct cluster address in the weblogic configuration.
              http://edocs.bea.com/wls/docs90/cluster/setup.html#726973
              Schelstraete Bart
              [email protected]
              http://www.schelstraete.org
              http://www.linkedin.com/in/bschelst

  • Load balancing by the proxy plugin

    Has anyone encountered this before:
    I have a cluster of two WLS 5.1 servers, hosting servlets that serve web
    requests. The requests are proxied through a web server ( I have tried
    Weblogic, Apache as well as IIS). I also have a tool that simulates
    concurrent web requests and fires them to the proxy server.
    As per documentation, as the load balancing while proxying requests to
    servlets is round robin, I expect that the requests are uniformly
    distributed across the two weblogic servers. But what I see is a bit
    different. In one case I fired 15 requests and found that 11 went to first
    server and 4 went to the other.
    Second time when I fired again 2 of them went to the first server and 13 to
    the second one. I would expect that around half of the total requests
    should be routed to each server everytime so that there is a proper load
    balancing done by the proxy. I have not changed any configuration related
    to the default load balancing algorithm. So I expect it is round-robin.
    Has anyone encountered this before ? This happens to me irrespective of
    which proxy server I use (i.e which proxy plugin I use). Is there some
    other configuration required and I am missing something or is there some
    inherent problem with the load balancing of the proxy plugins. Any info
    would be highly appreciated.
    Thanks
    Mainak

    Could you post this in weblogic.developer.interest.plug-in? This group is for
    ejb related questions. Thanks.
    Bill
    Mainak Datta wrote:
    Has anyone encountered this before:
    I have a cluster of two WLS 5.1 servers, hosting servlets that serve web
    requests. The requests are proxied through a web server ( I have tried
    Weblogic, Apache as well as IIS). I also have a tool that simulates
    concurrent web requests and fires them to the proxy server.
    As per documentation, as the load balancing while proxying requests to
    servlets is round robin, I expect that the requests are uniformly
    distributed across the two weblogic servers. But what I see is a bit
    different. In one case I fired 15 requests and found that 11 went to first
    server and 4 went to the other.
    Second time when I fired again 2 of them went to the first server and 13 to
    the second one. I would expect that around half of the total requests
    should be routed to each server everytime so that there is a proper load
    balancing done by the proxy. I have not changed any configuration related
    to the default load balancing algorithm. So I expect it is round-robin.
    Has anyone encountered this before ? This happens to me irrespective of
    which proxy server I use (i.e which proxy plugin I use). Is there some
    other configuration required and I am missing something or is there some
    inherent problem with the load balancing of the proxy plugins. Any info
    would be highly appreciated.
    Thanks
    Mainak

  • WLS proxy plugin does not load balance

    I have a cluster created with two app servers in separate boxes and a Weblogic proxy plug-in to forward the client requests to the servers. However, the proxy doesn't distribute the load equally. Very often 90% of the user sessions go to one server and 10% to the other. Both boxes have the same hardware specs.
              Does the WLS plugin really support round-robin load balancing ? I'd appreciate any information to solve this problem.
              Thanks
              - Miguel
              I'm using WLS 6.1 SP2.
              

    Are you load balancing the web servers? What kind of web servers are you
              using?
              Miguel Vilar wrote:
              >I have a cluster created with two app servers in separate boxes and a Weblogic proxy plug-in to forward the client requests to the servers. However, the proxy doesn't distribute the load equally. Very often 90% of the user sessions go to one server and 10% to the other. Both boxes have the same hardware specs.
              >Does the WLS plugin really support round-robin load balancing ? I'd appreciate any information to solve this problem.
              >Thanks
              >- Miguel
              >I'm using WLS 6.1 SP2.
              >
              

  • Proxy plugin misbehaves on certain ppath

    I have the following definitions in obj.conf of iplanet 4.1 SP11 under solaris
    5.7.
    <Object name="spotbid" ppath="*/spotbid/*">
    Service fn="wl_proxy" WebLogicHost="###.###.###.####" WebLogicPort="7012" DebugConf
    igInfo="ON"
    </Object>
    <Object name="old" ppath="*">
    Service fn="wl_proxy" WebLogicHost="###.###.###.####" WebLogicPort="8009" DebugConf
    igInfo="ON"
    </Object>
    The problem:
    Every single request goes to the spotbid even if the request does not go to start
    with /spotbid. For example: http://host/foo will go to port 7012, instead of 8009.
    If I change from ppath="*/spotbid/*" to ppath="*/nothing/*"
    it works as excepted.
    "spotbid" is the user iplanet runs under. It is also the first directory in the
    path to iplanet "/spotbid/.../iplanet4/https-proxy"
    I have tried this with the proxy plugins from weblogic 5.1 and 6.1 and both exhibit
    the same problem.

    I tried myself with playing proxy settings of browser along with above configuration.Finally I got it.

  • PC with client cert -- IIS-- WLS using proxy plugin

    I have the following configuration
    PC ----> IIS Web Server ----> WLS
    The PC has a Windows COM application that will use HTTPS to communicate with a
    servlet + ejbs on WLS. The PC has a digitial certificate, the PC authenticates
    IIS and the IIS authenticates the PC via SSL.
    We want to use the BEA IIS plugin to proxy the PC requests to the Servlets/EJBs
    on WLS. We also want the public digital certificate on the PC to be sent from
    IIS to WLS as we need to extract information from it on WLS.
    Solution ID S-08166 says this can be done for Apache. Can it be done for IIS and
    if so how?
    Thanks
    Colman

    I would like the same behaviour but with NSAPI plugin
    any configuration guidelines
    The ppath is the same but one is http and the other https
    "Varun" <[email protected]> wrote in message
    news:3da32e55$[email protected]..
    >
    We are trying to secure certain pages in our web application. Our setuphas an
    IIS server with the WebLogic ISAPI plugin configured for path forwarding.However,
    it seems that we can configure the plugin either to secure all traffic tothe
    Weblogic server or none of it (SecureProxy=ON/OFF).
    What we would like to do is to setup the plug-in so that all incomminghttp traffic
    is forwarded to Weblogic server over http and all https traffic isforwarded to
    the same weblogic server over https. Is there any way to do this?
    Any help is very appreciated.

  • Opera issue with weblogic libproxy plugin

    I am using iPlanet and weblogic
    iPlanet as web server
    and
    weblogic as application server.
    For connectivity between both, I am using libproxy.so plugin of weblogic for iPlanet server.
    Both are SSL enabled.
    It is working fine with IE 6> , Mozilla firefox..
    But it is giving issue for file upload in Opera browser...
    following is log of proxy plugin 'libproxy.so' on iplanet server.
    ============================= new request ===============================
    INFO: SSL is configured
    INFO: SSL configured successfully
    URI=[WebConverter/WebCon/upload]
    Expect header is found, reply with "HTTP/1.1 100 Continue"
    Hdrs from Client:content-length=25481
    Hdrs from Client:content-type=multipart/form-data; boundary=----------L05cZh1cacTgitQlCGWaLM
    Hdrs from Client:user-agent=http://Opera/9.64 (Windows NT 5.1; U; en) Presto/2.1.1
    Hdrs from Client:host=10.10.61.94:82
    Hdrs from Client:accept=http://text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, /;q=0.1
    Hdrs from Client:accept-language=http://en-US,en;q=0.9
    Hdrs from Client:accept-charset=http://iso-8859-1, utf-8, utf-16, *;q=0.1
    Hdrs from Client:accept-encoding=deflate, gzip, x-gzip, identity, *;q=0
    Hdrs from Client:referer=https://10.10.61.94:82/WebCon/WebCon/ConversionsFiles.jsp?classMaster=446
    Hdrs from Client:cookie=JSESSIONID=K7BYDJQd1bz4p64DfZQcnkdy1mqHxvStynJTPfCfXtQqgzH9f4Mt!685702995
    Hdrs from Client:cookie2=$Version=1
    Hdrs from Client:te=deflate, gzip, chunked, identity, trailers
    Temp Post File name = [tmp/_wl_proxy/_post__27240_1]
    *******Exception type READ_ERROR_FROM_CLIENT (reading client POST data failed) raised at line 598 of proxy.cpp
    Apart from this, screen show message..... 'HTTP/1.1 100 Continue'
    It is not hitting app server..
    I am not able to understand why it is happening...
    i checked out some sites mentioned below but to no success...
    http://marc.info/?l=nginx&m=123027309025203&w=2
    plz help if u know abt same.
    :-)

    I am using GNU Linux machine ...following is output of uname command as shown below:-
    uname --all
    Linux linuxbox01 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 i686 i386 GNU/Linux
    ----------------------------On sun download site,
    https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_SMI-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=SJWS6.1-ADDON-OCT0104-G-F@CDS-CDS_SMI
    under download page of "Sun Java System Web Server Reverse Proxy Add-On 6.1", i am getting list of os as shown below.:
    AIX 5.1
    AIX 5.2
    AIX 5.3
    HP-UX 11i
    Red Hat Enterprise Linux 2.1
    Red Hat Enterprise Linux 3
    Red Hat Enterprise Linux 4
    Solaris 10 64-bit (SPARC)
    Solaris 8,9,10 - SPARC
    Solaris 9 & 10 - x86
    Windows 2000 Server SP4
    Windows Server 2003, Enterprise Edition
    Windows XP Professional
    Please let me know which one to download.
    I am using iPlanet with version details shown below:
    Sun ONE Web Server 6.1SP3 B08/17/2004 22:22

  • Debug Reverse Proxy Plugin

    Is there any way to debug the reverse proxy plugin? I am running the following plugin (info: PASS1000: Sun ONE Web Server 6.1SP3 Reverse Proxy Plugin B09/09/2004 11:59) on the following webserver( Sun ONE Web Server 6.1SP5 B06/23/2005 17:36).
    I have the following obj.conf file:
    #AuthTrans fn="match-browser" browser="*MSIE*" ssl-unclean-shutdown="true"
    NameTrans fn="assign-name" from="/amconsole(|/*)" name="default.system"
    NameTrans fn="assign-name" from="/amserver(|/*)" name="default.system"
    NameTrans fn="assign-name" from="/uwc(|/*)" name="default.system"
    NameTrans fn="assign-name" from="/*" name="messengerXpress"
    NameTrans fn="ntrans-j2ee" name="j2ee"
    NameTrans fn=pfx2dir from=/mc-icons dir="/opt/SUNWwbsvr/ns-icons" name="es-internal"
    NameTrans fn=document-root root="$docroot"
    PathCheck fn=unix-uri-clean
    PathCheck fn="check-acl" acl="default"
    PathCheck fn=find-pathinfo
    PathCheck fn=find-index index-names="index.html,home.html,index.jsp"
    ObjectType fn=type-by-extension
    ObjectType fn=force-type type=text/plain
    Service method=(GET|HEAD) type=magnus-internal/imagemap fn=imagemap
    Service method=(GET|HEAD) type=magnus-internal/directory fn=index-common
    Service method=(GET|HEAD|POST) type=*~magnus-internal/* fn=send-file
    Service method=TRACE fn=service-trace
    Error fn="error-j2ee"
    AddLog fn=flex-log name="access"
    </Object>
    <Object name="j2ee">
    Service fn="service-j2ee" method="*"
    </Object>
    <Object name="cgi">
    ObjectType fn=force-type type=magnus-internal/cgi
    Service fn=send-cgi user="$user" group="$group" chroot="$chroot" dir="$dir" nice="$nice"
    </Object>
    <Object name="es-internal">
    PathCheck fn="check-acl" acl="es-internal"
    </Object>
    <Object name="send-compressed">
    PathCheck fn="find-compressed"
    </Object>
    <Object name="compress-on-demand">
    Output fn="insert-filter" filter="http-compression"
    </Object>
    <Object name="default.system">
      ObjectType fn="check-passthrough" type="magnus-internal/passthrough"
    </Object>
    <Object name="messengerXpress">
      ObjectType fn="force-type" type="magnus-internal/passthrough"
      Service type="magnus-internal/passthrough" fn="service-passthrough" servers="http://uwc.unca.edu:8080"
    </Object>When I access http://uwc.unca.edu/ I expect to be forwarded to the login page on http://uwc.unca.edu:8080/. Instead I see the index.html page from the default web server.
    What is wrong with this setup?
    Thanks,
    Pete

    Dear elving,
    I am facing the problem to configure reverse proxy plugin.From webserver 6.1 sp8 I want to serve pages that are on application server
    our evirnonment
    INTERNET<---------->Sun Webserver 6.1sp8<---------->sun one application server
    only webserver is visible to internet & appserver is in intranet environment.
    no one will give hit directly to appserver.
    www.abc.com running on webserver on default port 80.If I type www.abc.com, displays its pages
    when I type www.abc.com/bsd it should serve the pages on app server without changing url in the browser
    ==================================================
    Here my configuration files
    obj.conf
    # You can edit this file, but comments and formatting changes
    # might be lost when the admin server makes changes.
    # Use only forward slashes in pathnames--backslashes can cause
    # problems. See the documentation for more information.
    <Object name="default">
    AuthTrans fn="match-browser" browser="*MSIE*" ssl-unclean-shutdown="true"
    NameTrans fn="assign-name" from="/idm" name="passthrough1"
    NameTrans fn="ntrans-j2ee" name="j2ee"
    NameTrans fn="pfx2dir" from="/mc-icons" dir="D:/Sun/WebServer6.1/ns-icons" name="es-internal"
    NameTrans fn="document-root" root="$docroot"
    PathCheck fn="nt-uri-clean"
    PathCheck fn="check-acl" acl="default"
    PathCheck fn="find-pathinfo"
    PathCheck fn="find-index" index-names="index.html,home.html,index.jsp"
    ObjectType fn="type-by-extension"
    ObjectType fn="force-type" type="text/plain"
    Service method="(GET|HEAD)" type="magnus-internal/imagemap" fn="imagemap"
    Service method="(GET|HEAD)" type="magnus-internal/directory" fn="index-common"
    Service method="(GET|HEAD|POST)" type="*~magnus-internal/*" fn="send-file"
    #Service method=(GET|HEAD) type="*/*" fn="service-passthrough" servers="http://150.2.0.216"
    Service method="TRACE" fn="service-trace"
    Error fn="error-j2ee"
    AddLog fn="flex-log" name="access"
    </Object>
    <Object name="j2ee">
    Service fn="service-j2ee" method="*"
    </Object>
    <Object name="cgi">
    ObjectType fn="force-type" type="magnus-internal/cgi"
    Service fn="send-cgi"
    </Object>
    <Object name="es-internal">
    PathCheck fn="check-acl" acl="es-internal"
    </Object>
    <Object name="passthrough1">
    ObjectType fn="force-type" type="magnus-internal/passthrough"
    Service type="magnus-internal/passthrough" fn="service-passthrough" servers="http://150.2.0.216:8080/idm"
    </Object>
    ======================================
    magnus.conf
    # The NetsiteRoot, ServerName, and ServerID directives are DEPRECATED.
    # They will not be supported in future releases of the Web Server.
    NetsiteRoot D:/Sun/WebServer6.1
    ServerName abc
    ServerID https-www.abc.com
    RqThrottle 128
    DNS off
    Security off
    ExtraPath D:/Sun/WebServer6.1/bin/https/bin
    Init fn=flex-init access="$accesslog" format.access="%Ses->client.ip% - %Req->vars.auth-user% [%SYSDATE%] \"%Req->reqpb.clf-request%\" %Req->srvhdrs.clf-status% %Req->srvhdrs.content-length%"
    Init fn="load-modules" shlib="D:/Sun/WebServer6.1/bin/https/bin/j2eeplugin.dll" shlib_flags="(global|now)"
    Init fn="load-modules" shlib="D:/Sun/WebServer6.1/plugins/passthrough/passthrough.dll"
    funcs="init-passthrough,auth-passthrough,check-passthrough,service-passthrough" NativeThread="no"
    ============================
    Looking for ur reply
    Thanks in advance
    Edited by: madh0000 on Dec 10, 2007 8:27 PM

  • Weblogic Apache Plugins -Put/Delete Method

    Hi ,
    I need to find out if the weblogic plugin Apache supports the use of http PUT and DELETE operations (instead of GET and POST) and if so I need an example plugin configuration where the clients are using the "PUT" and "DELETE" operations. And, again assuming the plugin supports PUT and DELETE, are there any known issues with there use in conjunction with the plugin.

    Hi ,
    Here is the details about the HTTP Put/Delete Protocol :-
    Supported :-
    HTTP Put and Delete Protocol is supported in Weblogic and Weblogic Apache Plugin .
    In Apache also these protocols are supported .
    Configuration :-
    If you want to configure it older version of Apache we have to use the (WebDav) of the apache .But you don't have do anything for newer version
    as this module should be there and we have to do only configuration for Apache for this module .
    Configuration of WebDab is here in newer version of Apache:-
    http://www.serverwatch.com/tutorials/article.php/2176771/Enabling-WebDAV-on-Apache.htm
    We don't have to do anything on Weblogic and Apache Weblogic Plugin side .As by default they support these protocols.
    Usage :-
    I tested this in my environment by sending a Put request to Weblogic Plugin using the Tool called "Fiddler".
    I sent a request to Weblogic Plugin using this tool and it works . Even i checked on the Apache plugin log files also that it works.
    There is good note from apache how to use the Put/Delete function in Apache .
    Please follow this link for usage for Put/Delete for Apache for uploading files to server . How this make life easy .
    http://www.apacheweek.com/features/put
    http://stackoverflow.com/questions/1051004/how-to-send-put-delete-http-request-in-httpurlconnection
    Security Risk :-
    Please keep in mind that there is security risk when we use this protocol which is clearly explain in the note when we use this in the example above.
    Here is a nice article also which explains the security concerns of Put :-
    https://www.golemtechnologies.com/articles/http-put-security
    Tested hitting localhost/console
    Edited the request header GET /console/login/LoginForm.jsp HTTP/1.1 to PUT /console/login/LoginForm.jsp HTTP/1.1
    Got the following in the apache log file
    ================New Request: [PUT /console/ HTTP/1.1] =================
    Wed May 29 19:24:35 2013 <608013698698758> INFO: SSL is not configured
    Wed May 29 19:24:35 2013 <608013698698758> Using Uri /console/
    Wed May 29 19:24:35 2013 <608013698698758> After trimming path: '/console/'
    Wed May 29 19:24:35 2013 <608013698698758> The final request string is '/console/'
    Wed May 29 19:24:35 2013 <608013698698758> SEARCHING id=[10.157.153.243:7001] from current ID=[10.157.153.243:7001]
    Wed May 29 19:24:35 2013 <608013698698758> The two ids matched
    Wed May 29 19:24:35 2013 <608013698698758> @@@FOUND...id=[10.157.153.243:7001], server_name=[localhost], server_port=[80]
    Wed May 29 19:24:35 2013 <608013698698758> attempt #0 out of a max of 5
    Wed May 29 19:24:35 2013 <608013698698758> Trying a pooled connection for '10.157.153.243/7001/7001'
    Wed May 29 19:24:35 2013 <608013698698758> getPooledConn: No more connections in the pool for Host[10.157.153.243] Port[7001] SecurePort[7001]
    Wed May 29 19:24:35 2013 <608013698698758> general list: trying connect to '10.157.153.243'/7001/7001 at line 2716 for '/console/'
    Wed May 29 19:24:35 2013 <608013698698758> INFO: New NON-SSL URL
    Wed May 29 19:24:35 2013 <608013698698758> Connect returns -1, and error no set to 10035, msg 'Unknown error'
    Wed May 29 19:24:35 2013 <608013698698758> EINPROGRESS in connect() - selecting
    Wed May 29 19:24:35 2013 <608013698698758> Local Port of the socket is 3175
    Wed May 29 19:24:35 2013 <608013698698758> Remote Host 10.157.153.243 Remote Port 7001
    Wed May 29 19:24:35 2013 <608013698698758> general list: created a new connection to '10.157.153.243'/7001 for '/console/', Local port:3175
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Host]=[localhost]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Connection]=[keep-alive]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Accept]=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[User-Agent]=[Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Accept-Encoding]=[gzip,deflate,sdch]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Accept-Language]=[en-US,en;q=0.8]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from clnt:[Cookie]=[ADMINCONSOLESESSION=yQ7GRmLfKBhHdJrQ55t4X2v9y0v1NZCGj5qtfQdshz6w87nPc4nW!419247034]
    Wed May 29 19:24:35 2013 <608013698698758> URL::sendHeaders(): meth='PUT' file='/console/' protocol='HTTP/1.1'
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Host]=[localhost]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Accept]=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[User-Agent]=[Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Accept-Encoding]=[gzip,deflate,sdch]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Accept-Language]=[en-US,en;q=0.8]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Cookie]=[ADMINCONSOLESESSION=yQ7GRmLfKBhHdJrQ55t4X2v9y0v1NZCGj5qtfQdshz6w87nPc4nW!419247034]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Connection]=[Keep-Alive]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[WL-Proxy-SSL]=[false]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[WL-Proxy-Client-IP]=[127.0.0.1]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[Proxy-Client-IP]=[127.0.0.1]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[X-Forwarded-For]=[127.0.0.1]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[X-WebLogic-KeepAliveSecs]=[30]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to WLS:[X-WebLogic-Force-JVMID]=[419247034]
    Wed May 29 19:24:35 2013 <608013698698758> URL::parseHeaders: CompleteStatusLine set to [HTTP/1.1 302 Moved Temporarily]
    Wed May 29 19:24:35 2013 <608013698698758> URL::parseHeaders: StatusLine set to [302 Moved Temporarily]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[Connection]=[close]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[Date]=[Wed, 29 May 2013 23:24:35 GMT]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[Transfer-Encoding]=[chunked]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[Location]=[http://localhost/console/console.portal?_nfpb=true]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[Content-Type]=[text/html; charset=UTF-8]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[X-WebLogic-JVMID]=[419247034]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs from WLS:[X-Powered-By]=[Servlet/2.5 JSP/2.1]
    Wed May 29 19:24:35 2013 <608013698698758> parsed all headers OK
    Wed May 29 19:24:35 2013 <608013698698758> sendResponse() : r->status = '302'
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to client (add):[Date]=[Wed, 29 May 2013 23:24:35 GMT]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to client (add):[Location]=[http://localhost/console/console.portal?_nfpb=true]
    Wed May 29 19:24:35 2013 <608013698698758> Hdrs to client (add):[X-Powered-By]=[Servlet/2.5 JSP/2.1]
    Wed May 29 19:24:35 2013 <608013698698758> canRecycle: conn=1 status=302 isKA=0 clen=-1 isCTE=1
    Wed May 29 19:24:35 2013 <608013698698758> closeConn: URL.canRecycle() returns false, deleting URL '10.157.153.243/7001'
    Wed May 29 19:24:35 2013 <608013698698758> request [console/] processed successfully..................
    Regards
    Sahil Soni
    ------------------------------------------------------------------------------------------------------------------------------

  • How to start weblogic in debug mode from BEA WebLogic Eclipse plugin

    I have a problem making weblogic work with eclipse3.1. I am using a BEA WebLogic plugin to handle weblogic (start/stop) from eclipse. However I want to debug my application and I am unable to figure out a way to start my weblogic in debug mode like we do in WSAD. I tried using some other plugins also but no luck. Please suggest me a plugin to handle this or any other way of debugging my application from eclipse. I am using weblogic 8.1.

    Hi,
    Dev Environment
    weblogic eclipse plugin 2.0 beta
    weblogic server 8.1
    eclipse 3.1.1
    Created a server that i would like to deploy my EJB so that i can put break points on my EJB in eclipse.
    How do i do it?
    I managed to deploy an ear (containing the ejb) directly to the weblogic installed folder and it deployed the ejb. But the breakpoint set in eclipse is not triggered. Of course in this case as weblogic server is running the .ear file deployed manually in the file system.
    Any help is appreciated.
    Mel

Maybe you are looking for