私は私のweb.xmlにこの設定を持っています
<servlet>
    <servlet-name>welcome</servlet-name>
    <servlet-class>com.me.util.WelcomeServletPublic</servlet-class>
    <init-param>
        <param-name>redirect</param-name>
        <param-value>/login/login.action</param-value>
    </init-param>
    </servlet>
<welcome-file-list>
        <welcome-file>welcome</welcome-file>
    </welcome-file-list>
私の開発環境では、このリダイレクトは問題なく機能しました。すべてが本番環境に移動されたため、リダイレクトは機能していません。
https://mydomain.comにアクセスすると、 https : //mydomain.com/login/login.actionにリダイレクトされます。
何が起こっているのかというと、 https://login/login.actionにリダイレクトされ、ドメイン名が失われます
今、どこがうまくいかないのか疑問に思っている大きなことは、本番サーバーがどのように構成されているかです。
正面玄関で、mod_jkを実行しているApacheがあります。80と443の2つのリスナーがあります。80リスナーは、http:// urlを取得してhttps://に書き換えるようにmod_rewriteで構成されています。次に、443リスナーが要求を受け取り、それをmod_jkにダンプします。mod_jkは、要求をポート8009経由でtomcatにリダイレクトします。tomcatは、それぞれ独自の仮想ホストで約6つのアプリケーションを実行しています。
iveは、このような構成を行う必要はなく、どこでトラブルシューティングを行うべきかわかりません。サーブレットの前の/URLを削除できないことはわかっています。誰かがmydomain.com/usersにアクセスすると、mydomain.com / users / login / login.actionにリダイレクトされるため、実際にはどこから始めればいいのかわからない。
これが私のapachevhost設定です
    <VirtualHost 10.99.10.30:80>
        ServerName boardingsurvey.mydomain.org
        ServerAlias boardingsurvey.mydomain.org
        RewriteEngine On
        RewriteCond %{HTTPS} off
        RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>
<VirtualHost 10.99.10.30:443>
        ServerName boardingsurvey.mydomain.org
        ServerAlias boardingsurvey.mydomain.org
        DocumentRoot /var/www/vhosts/bss
        <Directory "/var/www/vhosts/bss">
                AllowOverride None
                Options Indexes FollowSymLinks
                Order allow,deny
                Allow from all
        </Directory>
        JkMount /* bss
        SSLEngine on
        SSLCipherSuite ALL:!ADH:!EXP56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
        SSLCertificateFile /etc/apache2/ssl/ssl.crt
        SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
        SSLCertificateChainFile /etc/apache2/ssl/intermediate.crt
</VirtualHost>
~