-->

WLP :: Change default context root on http

2019-02-27 08:22发布

问题:

When I do a http get on my websphere liberty profile v8.5.5 (let's assume http://my.domain.com) I'm presented with a nice page that says amongs other things "Welcome to the WebSphere Application Server V8.5 Liberty Profile"

It looks like this http://rdt1.demos.ibm.com/

How do I configure my server to not display this page and perhaps redirect my request to a login page on https?

Is this a configuration related to a new context root of a new app to be installed? Like this answer below? How to make "HTTPS redirect" work on WebSphere Application Server Liberty Profile? I feel like this should be something configured on server.xml but I can't find any reference to this.

Thanks in advance!

回答1:

You can turn that page off by adding the following to your server.xml file:

<httpDispatcher enableWelcomePage="false" />

http://www-01.ibm.com/support/knowledgecenter/api/content/nl/en-us/SSRTLW_9.0.0/com.ibm.websphere.wlp.nd.multiplatform.doc/autodita/rwlp_metatype_4ic.html#mtFile119

edit:

I should clarify, the other answer is also correct. If you install an application with "/" as the context root, it will be used instead of the main page.

If you add something like the following to that application's web.xml:

<security-constraint>
    <display-name>Some constraint</display-name>
    <web-resource-collection>
        <web-resource-name>All</web-resource-name>
        <description>All URLs</description>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <description>All users</description>
        <role-name>User</role-name>
    </auth-constraint>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

You will get the https redirect that you're asking for.

Additional edit (per comment), the following is a more complete example of how to set up the redirect: How to make "HTTPS redirect" work on WebSphere Application Server Liberty Profile?



回答2:

Just create your application and in the server.xml specify context root as follows:

<webApplication id="MyApp" location="MyApp.war" name="MyApp" contextRoot="/"/>

If you want to redirect to login page and ssl, then you will need to do all steps in the post you quoted and of course provide login page in your application.

If you want just to disable the welcome page, add to server.xml fragment provided by ebullient or even extend it by adding some javascript code which would make the redirect:

<httpDispatcher enableWelcomePage="false" appOrContextRootMissingMessage='&lt;script&gt;document.location.href="/MyApp/";&lt;/script&gt;'></httpDispatcher>