Sun Web Server Reverse Proxy and Weblogic HTTP to HTTPS redirection

Hi,
I am currently testing reverse-proxy from SJSW 7.0 update 5 to Weblogic server but I have encountered an issue.
I have configured a context root to be forwarded to weblogic:
Web Server: www.server.com
URI: /path
Reverse Proxy URL: wlserver:9000
When I access https://www.server.com/path, I am getting the correct page. The issue is, the weblogic server is configured to redirect HTTP access to HTTPS, i.e., when I access http://www.server.com/path, it should be redirected to https://www.server.com/path. However, that is not the case. What happens is that I am being redirected instead to https://www.server.com/.
If I don't use reverse proxy, that is, if I use the libproxy.so from weblogic, I get the correct redirection.
Would appreciate it very much if someone can help me troubleshoot this issue.
Thanks in advance!
Edited by: agent_orange on Jul 29, 2010 2:30 AM
Edited by: agent_orange on Jul 29, 2010 2:31 AM

I am not sure, how you have configured your reverse proxy since you didn't attach / refer your current configuration file. this is how I would do it..
- create a new configuration (using web server 7 admin gui , within configuration wizard, disable java option if you plan to use web server 7 only for reverse proxy)
- select this new configuration and go to reverse proxy and try to reverse proxy / to the origin server.
that is all it should need.
your obj.conf or <hostname>-obj.conf depending on your configuration should look like following snippet
<Object name="default">
AuthTrans..
NameTrans fn=map from="/" to="/path" name="reverse-proxy-/"
</object>
<Object name="reverse-proxy-/">
Route fn=....
Service ..
</Object>
this is all you should need..
However, if you wanted to add complexity to your configuration, you could do some thing like
<Object name="default">
Auth..
<If defined $security>
NameTrans fn=map from="/" to="/path" name="reverse-proxy-/"
</If>
</Object>
<Object name="reverse-proxy-/">
Route...
</Object>

Similar Messages

  • Web Dispatcher - Reverse Proxy and Load Balancing

    I'm finding limited docs on Web Dispatcher with regard to reverse proxy and load balancing.  Are you aware of some recent presentations or docs in this area?  The info on help.sap.com is not what I'm looking for.
    Thanks.

    Hi,
    best thing is that you look at your scenarios and test the web dispatcher against each of it, like:
    - SSL
    - Portal only
    - Web Dynpro ABAP / Java
    - BSP
    - Different backend systems like SRM, MDM
    - Several backends with 1 Web Dispatcher
    After getting a list of use cases that you can test quite easily (installation of Web Dispatcher is done fast and can be done on a local PC), you can contact SAP Support and ask them about the specific problems and questions you encountered. This way, you'll get the official answer, sometimes they will even inform you about "secret" parameters and options.
    As of the reverse proxy functionality: there are several version of Web Dispatcher available that differ from the functionality offered. The latest version - 7.2 - is the one that offers the most, i.e. allows you to create rewrite rules like Apache.
    SAP Note 908097 - SAP Web Dispatcher: Released releases and applying patches
    br,
    Tobias

  • Simple Two Server Reverse Proxy and Portal Config?

    Hi, I would like to create a very simple two box configuration to access Oracle Portal from the internet.
    Web Cache would run as a reverse proxy for login.mycompany.com and portal.mycompany.com with two IP addresses in the DMZ.
    The second server would run the Portal Mid tier, the Infrastructure tier and the oracle database.
    Is this configuration possible? The enterprise deployment guide uses 6 servers to do this. Can this be done with 2?

    in the Enterprise Deployment Guide in section 9.2.3.4 Updating the httpd.conf file:
    NameVirtualHost idmhost1.mycompany.com:7777
    <VirtualHost idmhost1.mycompany.com:7777>
    ServerName login.mycompany.com
    Port 443
    RewriteEngine On
    RewriteOptions inherit
    SimulateHttps On
    </VirtualHost>
    In Section 9.2.6.1 ensuring Validity of Self-Referential URLs Rendered on OracleAS Portal Pages is updates the portal's http fil
    <VirtualHost apphost1.mycompany.com:7778>
    ServerName apphost1.mycompany.com
    Port 7777
    RewriteEngine On
    RewriteOptions inherit
    </VirtualHost>
    I don't understand how all the ports map to different services when the infrastructure and portal tier are installed on the same server. But is the port 7777 in confllict? Is the Guide in section 9.2.6.1 using Port 7777 to connect to the web cache listening port?

  • ISA Server Reverse Proxy and SSL

    We are running ISA 2000 and EP6SP2 and have successfully configured SSL between the internet and our ISA server which is located it our DMZ. Result when you access the portal URL you have the padlock in the browser, when you have logged onto the portal the padlock disappears. Does anyone have any advice / documents on how to configure the next step which I believe is SSL between ISA server and EP6SP2 ?
    Any advice would be apreciated.
    Thanks

    Hello Alex,
    Have you read the documentation "Configuring the IIS as the Intermediary Server" at http://help.sap.com/saphelp_nw04/helpdata/en/07/914e4f02a69f448aeee7263b2a9dc6/frameset.htm
    Regards
    Gregor

  • Setting up SSO between Sun Web Server and MS6.0

    Hi,
    I want to set up a trusted SSO between Sun Web server 6.1 and the MS6.0.The document does not give enough information about this.Any one done this before?
    Thanks,
    Ramnath

    I'd recommend to cross-post your inquiry to the Security

  • Error message when deploying war file to sun web server 6.1

    i've been trying to deploy an application developed locally in tomcat to a local install of sun web server 6.1, and can't seem to get it to work. the error message i am getting now is:
    [05/Dec/2008:12:44:08] config ( 1640): for host xxx.xxx.xxx.xx trying to GET /cart/index.jsp, handle-processed reports: HTTP2205: The request method is not applicable to the requested resource.
    but that is the only error showing up. i've found some other forum topics involving memory issues (not the case here) and mime.type issues (not the case here), but nothing where this is the only error message showing up.
    any ideas? anyone?

    I deployed the application using a WAR file I created and the Server Manager.
    I've been able to get a JSP running in the $INSTALL_DIR/docs directory (database connectivity, result set printing, session data storing) but not outside of there.
    I switched to "finest" error reporting, but that isn't really helping much either.
    I even deployed one of the sample WAR files that came with the installation (webapps-simple.war), and it failed too, the error message I got was:
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, ntrans-j2ee reports: mapped uri "/jsp/num/numguess.jsp" in context "/simple" to resource "jsp"
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: context = StandardEngine[null].StandardHost[https-arlll3n4244.arcds.com].StandardContext[simple]
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: contextPath = /simple
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: wrapper = null
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: servletPath =
    [09/Dec/2008:10:35:51] fine ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: pathInfo = null
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: Authenticator[simple]: Security checking request GET /simple/jsp/num/numguess.jsp
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: Authenticator[simple]: Checking constraint 'SecurityConstraint[Protected Area]' against GET /jsp/num/numguess.jsp --> false
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: Authenticator[simple]: No applicable constraint located
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: Authenticator[simple]: Not subject to any constraint
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Mapping contextPath='/simple' with requestURI='/simple/jsp/num/numguess.jsp' and relativeURI='/jsp/num/numguess.jsp'
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Decoded relativeURI='/jsp/num/numguess.jsp'
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Trying exact match
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Trying prefix match
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Trying extension match
    [09/Dec/2008:10:35:51] finer ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WebModule[simple]: Mapped to servlet 'jsp' with servlet path '/jsp/num/numguess.jsp' and path info 'null' and update=true
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): JspEngine --> /jsp/num/numguess.jsp
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): ServletPath: /jsp/num/numguess.jsp
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): PathInfo: null
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): RealPath: C:\Sun\WebServer6.1\https-ARLLL3N4244.arcds.com\webapps\https-ARLLL3N4244.arcds.com\simple\jsp\num\numguess.jsp
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): RequestURI: /simple/jsp/num/numguess.jsp
    [09/Dec/2008:10:35:51] info ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: WEB2798: [cart/] ServletContext.log(): QueryString: null
    [09/Dec/2008:10:35:51] failure ( 5384): for host 192.168.112.96 trying to GET /simple/jsp/num/numguess.jsp, service-j2ee reports: StandardWrapperValve[jsp]: WEB2792: Servlet.service() for servlet jsp threw exception
    java.lang.IllegalArgumentException: WEB3446: setAttribute: Non-serializable attribute
         at org.apache.catalina.session.StandardSession.setAttribute(StandardSession.java:1280)
         at org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:191)
         at org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:191)
         at org.apache.jasper.runtime.PageContextImpl.setAttribute(PageContextImpl.java:271)
         at jsps.jsp._num._numguess_jsp._jspService(_numguess_jsp.java:81)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:908)
         at com.iplanet.ias.web.jsp.JspServlet$JspServletWrapper.service(JspServlet.java:688)
         at com.iplanet.ias.web.jsp.JspServlet.serviceJspFile(JspServlet.java:460)
         at com.iplanet.ias.web.jsp.JspServlet.service(JspServlet.java:376)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:908)
         at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:771)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:322)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:209)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:509)
         at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:157)
         at com.iplanet.ias.web.WebContainer.service(WebContainer.java:579)

  • Annoucing a few complimentary copies of Sun Web Server: Essentials Guide

    Dear Sun Web Server user,
    As you may have heard, found it on amazon.com or stumbled on it in the local book store like Borders or Barnes & Noble, there is a new book on Sun Web Server technology. If you haven't, no worries. Please refer to [t-5406033] or visit the [Essential Guide's web site|http://www.sunwebserver.com/].
    We are now pleased to announce availability of a few complimentary copies of the Essential Guide. We'll be raffling away the copies in the next few months. If you are interested in a free copy of the book, please read further to enter the raffle.
    It's easy to enter the raffle and get started:
    Step 1: If you haven't already done so, download, install and register.
    Step 2: Write a review of Sun Web Server product on Web Server's official page [1], and
    Step 3: Send us an email webserver at sun dot com, confirming your Step 1 along with a link to your review (Step 2).
    What happens next?
    We'll raffle at least a copy once in a month and the winner(s) will be notified. With may share the raffle results on with a permission from the lucky winners. If you are interested, get started today!
    [1] [Sun Web Server's official page|http://www.sun.com/webserver/].
    Disclaimer: Please note that the raffle is organized by the author(s), and that Sun Microsystems or Pearson Media - the publishers of The Essential Guide - are not responsible for the raffle.

    Hi mv,
    I probably mis-spoke. It is not so much the features that are missing in Sun Web Server, as it is the availability of additional user plugins. However, that being said, I chose Sun Web Server over Apache because of security and performance. I realize additional plugins could adversely affect both of those. I have emailed Sun marketing about a specific feature for Web Dav I would like to see. This would make things much easier for people who would like to do mass hosting virtual hosting. Most of the real valuable features that gave Apache an edge, the web server team has added in version 7. I have pasted a portion of the letter I emailed to Sun marketing below about Web Dav, and my logic behind it. This as well as being able to hook the user system into standard open source databases makes for a broader solution appeal. I realize I only have one view of the market, and these are just my two cents. :-) Thanks!
    TonyZ
    **** Letter ******
    I was introduced to Sun Web Server several years ago when we began looking at moving servers away from Microsoft technology and also bringing them into our facility. As a network and sys admin, I evaluated using different web servers out there as we had a few years to work on this project to ensure uptime and reliability. Initially, I found Sun Web Server quite confusing and looked at Apache. However, after the web interface was retooled, I found Sun Web Server quite simple and refreshing to use. Since we have to be CISP compliant for the credit card industry, security was very important to us. Not only from a code standpoint, but also from an accidental misconfiguration standpoint. In my opinion, Sun Web Server out shines Apache and other alternatives by a long shot.
    As far as the WebDav feature, what I have been looking at is how to expand and offer hosting and web services. I currently work for a small company which retails products on the web, and I also contribute to a few open source projects. Currently, I am working with http://www.mynajs.org/. We have been discussing how we could offer hosting for people wanting to try out the project. Hosting companies using Linux typically have deep hooks into the Linux operating system for managing users. For hosting, you have a whole specialized Linux stack with specialized disk quotas, users, ftp server with users based on Linux users, and mail. From my standpoint, while this works, it can become a nightmare as far as updates, system administration, patching, etc. For a business ROI, and technology footprint, this doesn't make sense. There are control panels out there that take care of some of this, but now you have another whole layer of technology to troubleshoot. If I do not want to use the Linux/Apache stack, and if I am using Java, and do not want to add Tomcat as well, what do I use? With Sun Web Server, I get the best of both worlds, one install, one piece of software, operating system separation, blazingly fast speed, out of the box clustering, one interface for management, standard serving as well as Java, and WebDav so that now I can eliminate an ftp server and reduce my footprint for security and maintenance headaches. One neat package. However, now I still have to manage and restrict users. How to do this using Sun Web Server? Right now, I have to either run an ftp server with quotas built in, or go back to the Linux operating system and work with specialized scripts an maintenance. In theory, if Sun Web Server had quotas, I have my user system with the controls I need. At the very least, if there were hooks to the WebDav system to perform custom processing on certain events, it would leave the door open for greater control of the user and system. Now if we want to offer a hosting solution, whether it be online storage, web hosting, or Java hosting, or social site, all we need is one product, Sun Web Server! With all of its features for enhancing performance, security, and much more. I might also add, that for a small companies, Sun Web Server has been a pretty much set it and forget it solution. It has been my experience for our servers to run pretty much without intervention once they are setup. With the watch dog process, if there is a problem, it is rarely noticed except for the admin watching the logs. Technically, I am not sure why anyone would choose something different than Sun Web Server. Apache is the hosting standard, but it is really Apache plus Linux. With a few more user features, I think Sun Web Server could replace the whole Apache/Linux stack, the Apache/Linux/Tomcat stack, outshine those solutions on heavy loads and high end features, and offer better ROI.

  • How do I use Sun Web Server 7.0u1 reverse proxy to change public URLs?

    Some of our installations use the Sun Web Server 7.0 (update 1, usually)
    for hosting some of the public resource and reverse-proxying other parts
    of the URI namespace from other backend servers (content, application
    and other types of servers).
    So far every type of backend server served a unique part of the namespace
    and there was no collision of names, and the backend resources were
    published in a one-to-one manner. That is, a backend resource like, say,
    http://appserver:8080/content/page.html would be published in the internet
    as http://www.publicsite.com/content/page.html
    I was recently asked to research whether we can rename some parts of
    the public URI namespace, to publish some or all resources as, say,
    http://www.publicsite.com/data/page.html while using the same backend
    resources.
    Another quest, possibly related in solution, was to make a tidy url for the
    first page the user opens of the site. That is, in the current solution when
    a visitor types the url "www.publicsite.com" in his or her browser, our web
    server returns an HTTP-302 redirect to the actual first page URL, so the
    browser sends a second request (and changes the URL in its location bar).
    One customer said that it is not "tidy". They don't want the URL to change
    right upon first rendering the page. They want the root page to be rendered
    instantly i the first HTTP request.
    So far I found that I can't solve these problems. I believe these problems
    share a solution because it relies on ability to control the actual URI strings
    requested by Sun Web Server from backend servers.
    Some details follow, now:
    It seems that the reverse proxy (Service fn="service-passthrough") takes
    only the $uri value which was originally requested by the browser. I didn't
    yet manage to override this value while processing a request, not even if
    I "restart" a request. Turning the error log up to "finest" I see that even
    when making the "service-passthrough" operation, the Sun Web Server
    still remembers that the request was for "/test" (in my test case below);
    it does indeed ask the backend server for an URI "/test" and that fails.
    [04/Mar/2009:21:45:34] finest (25095) www.publicsite.com: for host xx.xx.xx.83
    trying to GET /content/MainPage.html while trying to GET /test, func_exec reports:
    fn="service-passthrough" rewrite-host="true" rewrite-location="true"
    servers="http://10.16.2.127:8080" Directive="Service" DaemonPool="2b1348"
    returned 0 (REQ_PROCEED)My obj.conf file currently has simple clauses like this:
    # this causes /content/* to be taken from another (backend) server
    NameTrans fn="assign-name" from="/content" name="content-test" nostat="/content"
    # this causes requests to site root to be HTTP-redirected to a certain page URI
    <If $uri =~ '^/$'>
        NameTrans fn="redirect"
            url="http://www.publicsite.com/content/MainPage.html"
    </If>
    <Object name="content-test">
    ### This maps http://public/content/* to http://10.16.2.127:8080/content/*
    ### Somehow the desired solution should instead map http://public/data/* to http://10.16.2.127:8080/content/*
        Service fn="service-passthrough" rewrite-host="true" rewrite-location="true" servers="http://10.16.2.127:8080"
        Service fn="set-variable" set-srvhdrs="host=www.publicsite.com:80"
    </Object>
    I have also tried "restart"ing the request like this:
        NameTrans fn="restart" uri="/data"or desperately trying to set the new request uri like this:
        Service fn="set-variable"  uri="/magnoliaPublic/Main.html"Thanks for any ideas (including a statement whether this can be done at all
    in some version of Sun Web Server 7.0 or its opensourced siblings) ;)
    //Jim

    Some of our installations use the Sun Web Server 7.0 (update 1, usually)please plan on installing the latest service pack - 7.0 Update 4. these updates addresses potentially critical bug fixes.
    I was recently asked to research whether we can rename some parts of
    the public URI namespace, to publish some or all resources as, say,
    http://www.publicsite.com/data/page.html while using the same backend
    resources.> now, if all the resources are under say /data, then how will you know which pages need to be sent to which back end resources. i guess, you probably meant to check for /data/page.html should go to <back-end>/content/page.html
    yes, you could do something like
    - edit your corresponding obj.conf (<hostname>-obj.conf or obj.conf depending on your configuration)
    <Object name=¨default¨>
    <If $uri = ¨/page/¨>
    #move this nametrans SAF (for map directive - which is for reverse proxy within <if> clause)
    NameTrans.. fn=map
    </If
    </Object>
    and you could do https-<hostname>/bin/reconfig (dynamic reconfiguration) to check out if this is what you wanted. also, you might want to move config/server.xml <log-level> to finest and do your configuration . this way, you would get enough information on what is going on within your server logs.
    finally,when you are satisfied, you might have to run the following command to make your manual change into admin config repository.
    <install-root>/bin/wadm pull-config user=admin config=<hostname> <hostname>
    <install-root>/bin/wadm deploy-config --user=admin <hostname>
    you might want to check out this for more info on how you could use <if> else condition to handle your requirement.
    http://docs.sun.com/app/docs/doc/820-6599/gdaer?a=view
    finally, you might want to refer to this doc - which explains on ws7 request processing overview. this should provide you with some pointers as to what these different directives mean
    http://docs.sun.com/app/docs/doc/820-6599/gbysz?a=view
    >
    One customer said that it is not "tidy". They don't want the URL to change
    right upon first rendering the page. They want the root page to be rendered
    instantly i the first HTTP request.
    please check out the rewrite / restart SAF. this should help you.
    http://docs.sun.com/app/docs/doc/820-6599/gdada?a=view
    pl. understand that - like with more web servers - ordering of directives is very important within obj.conf. so, you might want to make sure that you verify the obj.conf directive ordering is what you want it to do..
    It seems that the reverse proxy (Service fn="service-passthrough") takes
    only the $uri value which was originally requested by the browser. I didn't
    yet manage to override this value while processing a request, not even if
    I "restart" a request. Turning the error log up to "finest" I see that even
    when making the "service-passthrough" operation, the Sun Web Server
    still remembers that the request was for "/test" (in my test case below);
    it does indeed ask the backend server for an URI "/test" and that fails.
    now, you are in the totally wrong direction. web server 7 includes a highly integrated reverse proxy solution compared to 6.1. unlike 6.1, you don´t have to download a separate plugin . however, you will need to manually migrate your 6.1 based reverse proxy settings into 7.0. please check out this blog link on how to set up a reverse proxy
    http://blogs.sun.com/amit/entry/setting_up_a_reverse_proxy
    feel free to post to us if you need any futher help
    you are probably better off - starting fresh
    - install ws7u4
    - use gui or CLI to create a reverse proxy and map one on one - say content
    http://docs.sun.com/app/docs/doc/820-6601/create-reverse-proxy-1?a=view
    if you don´t plan on using ws7 integrated web container (ability to process jsp/servlet), then you could disable java support as well. this should reduce your server memory footprint
    <install-root>/bin/wadm disable-java user=admin config=<hostname>
    <install-root>/bin/wadm create-reverse-proxy user=admin uri-prefix=/content server=<http://your back end server/ config=<hostname> --vs=<hostname>
    <install-root>/bin/wadm deploy-config --user=admin <hostname>
    now, you can check out the regular express processing and <if> syntax from our docs and try it out within <https-<hostname>/config/<hostname>-obj.conf> file and restart the server. pl. note that once you disable java, ws7 admin server creates <vs>-obj.conf and you need to edit this file and not default obj.conf for your changes to be read by server.
    >
    I have also tried "restart"ing the request like this:
    NameTrans fn="restart" uri="/data"
    ordering is very important here... you need to do this some thing like
    <Object name=default>
    <If not $restarted>
    NameTrans fn=restart uri from=/¨ uri=/foo.
    </If>

  • Replace Quotes, Connection Pooling, and Sun Web Server with MySQL, Oracle

    This is code I use to insert data into my MySQL and Oracle databases.
    I takes care of quotes and shows use of context, i.e. when you use Sun Web Server's
    ConnectionPooling. This code works. Feel free to reply if you have questions on how to set up connection pooling using Sun Web Server 6.1SP - it took quite a long time to learn and I couldn't find much information throughout the web, so I hope this helps...
    This is not a question and I am not looking for an answer, but please post comments or suggestions.
    dailysun
    This is in one class where I have a hashtable containing the
    column name / value pairs that I want to enter into my table.
    This class simply creates the SQL string from the values in the
    hashtable. It then passes that hashtable including the database
    name to a class which executes that sql statement (second code
    portion).
    /* Insert data into sf_parts. Create the column strings from
             * the provided hash table. Be sure to parse out hash elements which
             * are used for the createTemplate process
            StringBuffer values = new StringBuffer();
            StringBuffer fields = new StringBuffer();
            Enumeration keys = fieldHash.keys();
            while(keys.hasMoreElements()){
                Object currentKey = keys.nextElement();
                    String fieldValue = (String) fieldHash.get(currentKey);
                    if(values.length() >0){
                        values.append(",");
                    values.append("'"+fieldValue.replaceAll("'","''")+"'"); // Takes care of quotes and various other special characters!
                    if(fields.length() >0){
                        fields.append(",");
                    fields.append(currentKey);
            sql = "INSERT INTO myTable (" + fields.toString() + ") VALUES (" + values.toString() + ");";
            String insertResult = caq.getInsertDelete(sql,"myDatabaseName"); // your database name is defined in web.xml and sun-web.xml when you use Sun Web Server's Connection Pooling.
            returnValue += "<br><br><b>Rows inserted into table(myTable): </b>" + insertResult + "<br>\n";
            And, like I describe above, this method executes the sql statement.
         * Takes care of insert, update and delete requests.
         * Must have set both dbName as well as the sql String.
         * Will return number of rows affected as String.
         * @return String Number of rows affected
         * @exception SQLException
         * @exception Exception
        public String getInsertDelete() {
            checkData(); // this simply checks if the variables dbName and sql are not empty ;-)
            InitialContext initContext = null;
            int rv = 0;
            try{
                // Get connection from configured pool
                initContext = new InitialContext();
                source = (DataSource) initContext.lookup("java:comp/env/jdbc/" + dbName); // I have this set up in web.xml and sun-web.xml (I use Sun Web Server 6.1SP which does connection pooling for me)
                conn = source.getConnection();
                if(conn != null){
                    stmt = conn.createStatement();
                    rv = stmt.executeUpdate(sql);
            }catch (SQLException e){
                // do something
            }catch (Exception e){
                // do something
            }finally{
                try{
                    stmt.close();
                }catch(Exception e){
                    // do something
                try{
                    conn.close();
                }catch(Exception e){
                    // do something
                try{
                    initContext.close();
                }catch(Exception e){
                    // do something
            return rv+"";
        }  

    This is code I use to insert data into my MySQL and
    Oracle databases.
    I takes care of quotes and shows use of context, i.e.
    when you use Sun Web Server's
    ConnectionPooling. This code works. Feel free to
    reply if you have questions on how to set up
    connection pooling using Sun Web Server 6.1SP - it
    took quite a long time to learn and I couldn't find
    much information throughout the web, so I hope this
    helps...
    This is not a question and I am not looking for an
    answer, but please post comments or suggestions.Using prepared statements would mean that you wouldn't have to worry about quotes.
    You should be closing the result set.
    You are handling all fields as strings. That won't work with time fields and might not work for numeric fields.
    Presumably most of your variables are member variables. They should be local variables because that is the scope of the usage.
    You must do something with the exceptions.
    Hashtables although convienent mean that problems with usage can only be resolved at run time rather than compile time.

  • How to do auto URL redirect in sun web server ?

    Hi, i need to do auto url redirect in my sun web server. Currently i'm setup some rules for the reverse proxy in obj.conf file and the syntax looks like:
    <Object name="reverse-proxy-/test">
    <If $internal and $uri =~ "index.html">
    NameTrans fn="redirect" from="/" uri="/examples/abc.html"
    </If>
    Route fn="set-origin-server" server="http://localhost:8989"
    </Object>
    The situation is:
    1) When users browse "*http://localhost/examples/abc.html*" it will redirect to abc.html
    2) When users browse "*http://localhost/test*" it will redirect to the localhost admin GUI (http://localhost:8989/admingui/admingui/serverTaskGeneral)
    My desire output should be whenever users browse the "*http://localhost/test*" , it will redirect to abc.html page.
    the syntax might be wrong. So, anyone knows how to fix this? I'm keep trying but nothing worked. Please help me.

    Moderator action: Moved from Servers General Discussion.
    db

  • Reverse proxy and iWS 6.1 SP2?

    Hey all,
    i have 2 questions.
    Can i use reverse proxy (and pass proxy) with iWS 6.1 SP2?
    How must i configure the webserver to use this?
    I need the following thing:
    Client called https://server111.de/XXXXTruePassApp/ ---> Proxy get Data from https://server222.de/XXXXTruePassAppProxy/
    Under Apache looks like that with mod_proxy:
    ProxyPass /eCaSSTruePassApp/ https://server222.de/XXXXTruePassAppProxy/
    ProxyPassReverse /eCaSSTruePassApp/ https://server222.de/XXXXTruePassAppProxy/
    Thanks for help.
    Greets Chmeee-de

    Chmeee-de, I really don't think you should be using Sun ONE Web Server 6.1SP2. That version has known security vulnerabilities. Please consider applying the latest service pack, 6.1SP7.
    Have you downloaded the Reverse Proxy Plugin? Have you tried reading the Reverse Proxy Plugin release notes? The release notes for Reverse Proxy Plugin 6.1SP7 are at http://docs.sun.com/app/docs/doc/820-0262/6nc0vpnc2?a=view.
    Once you have the plugin installed and have edited the magnus.conf configuration file according to the release notes, you can add the following line immediately below the <Object name="default"> line in the obj.conf configuration file:NameTrans fn="assign-name" from="/XXXXTruePassApp/*" name="XXXXTruePassApp"This line indicates that requests for /XXXXTruePassApp/* should be serviced by an object named XXXXTruePassApp.
    You can then create an object named XXXXTruePassApp by adding the following to the bottom of the obj.conf configuration file:<Object name="XXXXTruePassApp">
    Service fn="service-passthrough" servers="https://server222.de"
    </Object>

  • Apache reverse proxy and SSL termination

    Hi Guru's
        Can anyone tell me, how to do SSL termination at apache reverse proxy. I am using apache reverse proxy for accesing portal from internet. Apache is configured for SSL and portal is NON SSL.
    I am using header variable login module in portal. i wanted to terminate SSL at apache reverse proxy and then all traffic after that should be clear text.
    should i maitain any property. is there any documentation for it.
    Please help me
    Tom

    The majority of the work here is around configuring your Web Dispatcher and Apache Reverse proxy. The work on the portal is straight forward enabling of SSL.
    You can follow http://help.sap.com/saphelp_nw2004s/helpdata/en/f1/2de3be0382df45a398d3f9fb86a36a/frameset.htm for setting this up.
    what level I need to configure SSL and how do I proceed in both scenarios?
    Your question itself says where you need SSL. SSL is required where ever you need HTTPS communication.
    how do I proceed in both scenarios?
    From a portal perspective, the configuration should remain the same.
    Do I have to install SSL at portal, web dispatcher or at Apache level?
    SSL needs to be configured at all the 3 levels if you are looking at end to end SSL implementation.
    See the following for possible SSL implementation options:
    http://help.sap.com/saphelp_nw04/helpdata/en/d8/a922d7f45f11d5996e00508b5d5211/frameset.htm
    https://cw.sdn.sap.com/cw/docs/DOC-115509
    Will SSL termination work for scenario 2?
    Yes this should work - see http://help.sap.com/saphelp_nw2004s/helpdata/en/36/fd39eacf4cde4a8fe32d7f29b3db16/frameset.htm
    However in case of SSL Termination, the request to your portal from the web dispatcher will be sent as HTTP.
    I would recommend you to take a step by step (backward approach).
    First, enable SSL on your portal and make sure it works - going directly to the server.
    Then, you can introduce the Web Dispatcher - and test if every thing works going through the web dispatcher.
    Finally - you can test the end to end flow - with your Reverse proxy involved.
    - Shanti

  • Need in depth knowledge about Certficate request and install for Reverse proxy and CAS role

    Hi,
    I have few confusions about Exchange 2010/13 certificate request and install. As per my understanding best practise is to assign public CA certificate to Reverse proxy and Local CA certificate to CAS servers but need to know that what should be the format
    of certificate request? Do we need to order public certificate just for mail.domain.com and add SAN for other web services URLs and is it required to add CAS array and server names to this certificate ? In what case we will add server names and what will happen
    if we don't add in it ? How the outlook clients connecting from internet will be using this certificate? I have very limited knowledge in certificates and it always pisses me off. Please help me with explanations and articles. I tried to google and gone through
    many articles but didn't get a fair idea. Thanks in advacnce. :) 

    Hi,
    Here are my answers you can refer to:
    1. Use the New-ExchangeCertificate cmdlet to generate a new certificate request:
    New-Exchangecertificate -domainname mail.domain.com, autodiscover.domain.com -generaterequest:$true -keysize 1024 -path "c:\Certificates\xxxx.req” -privatekeyexportable:$true –subjectname "c=US o=domain.com, CN=server.domain.com"
    2. CAS array name doesn’t need to be added in the certificate:
    http://blogs.technet.com/b/exchange/archive/2012/03/23/demystifying-the-cas-array-object-part-1.aspx
    3. It depends on the situation that you configured to add the server name.
    4. Outlook clients use certificate for authentication.
    If you have any question, please feel free to let me know.
    Thanks,
    Angela Shi
    TechNet Community Support

  • Arrowpoint Cookies, Reverse Proxy and Multiplexed Client Requests

    Hi,
    I have a reverse proxy which is performing SSL offload and making backend connections to two web servers. Between the reverse proxy and the two webservers, a CSS is in place to load balance between the web servers. There is a requirement for session stickiness on the web servers and since client IP details are lost through the reverse proxy I have used the arrowpoint-cookie method to load balance connections.
    However, the reverse proxy seems to make only a handful of connections to the servers compared to the number incoming client connections and we have noticed that stickiness is broken. Now, I would assume this is correct if arrowpoint-cookie makes a load balancing based on the first HTTP get in a tcp stream and not on a per transaction basis AND our reverse proxy is multiplexing client requests. However, I can not convince myself of how the arrowpoint-cookie method actually works.
    I wondered if anyone had any insight on this or had experienced similar issues with arrowpoint cookies?

    Hi Gilles,
    I have implemented this today, and we are still seeing issues with requests hitting the wrong server.
    A bit more info, the reverse proxy is an AXG Web Aopplication Firewall. I have been looking at this and am considering disabling connection re-use on here.
    However I am also wondering if this might be to do with the flow timeout multiplier I am using which is 5 (80 seconds). Perhaps this is too low?
    Thanks, David.

  • Using Sun Web Server 6.1 from the IDE

    Using JSE 8 with Sun Web Server 6.1 set as the target container, I have a SUNWS61deployment.xml file created.
    That didn't exist in JSE 7. Is it WS 6.1 SP4 or SP5 -related ?
    I also have ws61-sun-web.xml with a simple <sun-web-app/> tag (empty deployment descriptor).
    What should this file contain? Is it a replacement for sun-web.xml?
    Do I still need sun-web.xml? Its DTD declaration sounds like Sun
    App Server 7 (http://www.sun.com/software/sunone/appserver/dtds/sun-web-app_2_3-1.dtd)
    So you have plans to make "Sun Resources" (pools, JNDI resources, ...) created in the IDE be registerable directly in the Web Server just like it's possible with the sun app server?
    How safe is it to use JSE 8 with an older Web Server Service Pack (say 6.1SP1)?

    SUNWS61deployment.xml is created bythe IDE to be used internally and not to be used by the developer. This file wouldn't be sent to webserver after deployment.
    The ws61-sun-web.xml is sun-web.xml only and yes it is same as it is in Appserver7 as the webcontainer for both Webserver6.1 and Appserver7 are same. After deployment to webserver, ws61-sun-web.xml is renamed to Webserver as sun-web.xml by the IDE. When opened the developer can edit in the XML editor.
    The reason for having it as ws61-sun-web.xml in IDE is to avoid the clash between sun-web.xml of Appserver8.1 which is J2EE1.4 based whereas Webserver6.1 Web container is J2EE1.3 based.
    It should be okay to use any service pack of Webserver6.1 with JSE8
    Hope this helps

Maybe you are looking for

  • :: NWA does not show table view for monitoring reports ::

    Hi, We are facing an issue in one of our portal system. I click on Portal index page, then I go to Net weaver Administrator --> Monitoring --> Java system reports. Here I get the resource utilization graphs. The graphs show proper values however when

  • How to use a wireles printer

    How can I use the epson wireless printer with Ipad 3?

  • Is it possible to interrupt a planning sequence in FOX ?

    Hi, At the beginning of my planning sequence, I have to test a value with a FOX formula, if my value is wrong, I want to send a message to the WAD and stop the planning sequence, how to do this ? I have tested with the EXIT statement but it seems not

  • CANT INSTALL ITUNES 9. please help!

    i keep trying to install the new iTunes and i am unable to no matter what i do. ive downloaded the file 3 different times trying to see if itll change but doesnt. ive done some troubleshooting from apples help. i keep getting the error message when t

  • Siri seems to ignore middle names, but only sometimes

    I'm trying to teach Siri that my father is Mark Richard Smith.  Mark Smith is a common name in our family.  I, my eldest son, and several cousins have that name.  But we all have different middle names. When I tell Siri my father is Mark Richard Smit