diff --git a/container_files/httpd/grouper-www.conf b/container_files/httpd/grouper-www.conf index adc13f6f..0fa850a0 100644 --- a/container_files/httpd/grouper-www.conf +++ b/container_files/httpd/grouper-www.conf @@ -16,6 +16,6 @@ __GROUPER_PROXY_PASS__ProxyPass /__GROUPER_URL_CONTEXT__ ajp://localhost:8009/__ __GROUPERWS_PROXY_PASS__ProxyPass /__GROUPERWS_URL_CONTEXT__ ajp://localhost:8009/__GROUPER_TOMCAT_CONTEXT__ timeout=__GROUPER_APACHE_AJP_TIMEOUT_SECONDS__ __GROUPERSCIM_PROXY_PASS__ProxyPass /__GROUPERSCIM_URL_CONTEXT__ ajp://localhost:8009/__GROUPER_TOMCAT_CONTEXT__ timeout=__GROUPER_APACHE_AJP_TIMEOUT_SECONDS__ -__GROUPER_PROXY_PASS__RewriteEngine on -__GROUPER_PROXY_PASS__RewriteRule "^/$" "/__GROUPER_URL_CONTEXT__/" [R] +__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__RewriteEngine on +__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__RewriteRule "^/$" "/__GROUPER_URL_CONTEXT__/" [R] diff --git a/container_files/httpd/ssl-enabled.conf b/container_files/httpd/ssl-enabled.conf index cd894c94..f213df76 100644 --- a/container_files/httpd/ssl-enabled.conf +++ b/container_files/httpd/ssl-enabled.conf @@ -13,8 +13,8 @@ SSLStaplingCache shmcb:/var/run/ocsp(128000) Listen __GROUPER_APACHE_SSL_PORT__ https -__GROUPER_PROXY_PASS__ RewriteEngine on -__GROUPER_PROXY_PASS__ RewriteRule "^/$" "/grouper/" [R] +__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__RewriteEngine on +__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__RewriteRule "^/$" "/grouper/" [R] SSLEngine on SSLCertificateChainFile __GROUPER_SSL_CHAIN_FILE__ diff --git a/container_files/tier-support/test/grouperContainerUnitTest.sh b/container_files/tier-support/test/grouperContainerUnitTest.sh index 4320c755..a962b85b 100644 --- a/container_files/tier-support/test/grouperContainerUnitTest.sh +++ b/container_files/tier-support/test/grouperContainerUnitTest.sh @@ -5,7 +5,7 @@ if [ "$#" -ne 4 ]; then exit 1 fi -expectedSuccesses=686 +expectedSuccesses=692 export containerName=$1 export imageName=$2 diff --git a/container_files/tier-support/test/grouperContainerUnitTestUi.sh b/container_files/tier-support/test/grouperContainerUnitTestUi.sh index 08bac1e0..2b0fdaa8 100644 --- a/container_files/tier-support/test/grouperContainerUnitTestUi.sh +++ b/container_files/tier-support/test/grouperContainerUnitTestUi.sh @@ -43,6 +43,10 @@ testContainerUi() { assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "SSLCertificateFile /etc/pki/tls/certs/host-cert.pem" assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "SSLCertificateKeyFile /etc/pki/tls/private/host-key.pem" assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "Listen 443 https" + assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "RewriteRule" + assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf "#RewriteRule" + assertFileContains /etc/httpd/conf.d/grouper-www.conf "RewriteRule" + assertFileNotContains /etc/httpd/conf.d/grouper-www.conf "#RewriteRule" assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf "__" assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf cachain.pem assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf /etc/pki/tls/certs/localhost.crt diff --git a/container_files/tier-support/test/grouperContainerUnitTestUi2.sh b/container_files/tier-support/test/grouperContainerUnitTestUi2.sh index fd90b50d..baf03a76 100644 --- a/container_files/tier-support/test/grouperContainerUnitTestUi2.sh +++ b/container_files/tier-support/test/grouperContainerUnitTestUi2.sh @@ -12,11 +12,11 @@ testContainerUi2() { echo echo '################' echo Running container as ui - echo "docker run --detach --name $containerName --publish 443:443 -e GROUPER_SSL_USE_STAPLING=false -e GROUPER_SSL_CERT_FILE=/a/b/cert -e GROUPER_SSL_KEY_FILE=/a/b/key -e GROUPER_SSL_CHAIN_FILE=/a/b/chain $imageName ui" + echo "docker run --detach --name $containerName --publish 443:443 -e GROUPER_SSL_USE_STAPLING=false -e GROUPER_SSL_CERT_FILE=/a/b/cert -e GROUPER_SSL_KEY_FILE=/a/b/key -e GROUPER_SSL_CHAIN_FILE=/a/b/chain -e GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=false $imageName ui" echo '################' echo - docker run --detach --name $containerName --publish 443:443 -e GROUPER_SSL_USE_STAPLING=false -e GROUPER_SSL_CERT_FILE=/a/b/cert -e GROUPER_SSL_KEY_FILE=/a/b/key -e GROUPER_SSL_CHAIN_FILE=/a/b/chain $imageName ui + docker run --detach --name $containerName --publish 443:443 -e GROUPER_SSL_USE_STAPLING=false -e GROUPER_SSL_CERT_FILE=/a/b/cert -e GROUPER_SSL_KEY_FILE=/a/b/key -e GROUPER_SSL_CHAIN_FILE=/a/b/chain -e GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=false $imageName ui sleep $globalSleepSecondsAfterRun @@ -43,6 +43,8 @@ testContainerUi2() { assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "SSLCertificateKeyFile /a/b/key" assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "SSLCertificateChainFile /a/b/chain" assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "Listen 443 https" + assertFileContains /etc/httpd/conf.d/ssl-enabled.conf "#RewriteRule" + assertFileContains /etc/httpd/conf.d/grouper-www.conf "#RewriteRule" assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf "__" assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf cachain.pem assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf /etc/pki/tls/certs/localhost.crt diff --git a/container_files/tier-support/test/grouperContainerUnitTestUiSubimage.sh b/container_files/tier-support/test/grouperContainerUnitTestUiSubimage.sh index 04c65b59..ca44a46a 100644 --- a/container_files/tier-support/test/grouperContainerUnitTestUiSubimage.sh +++ b/container_files/tier-support/test/grouperContainerUnitTestUiSubimage.sh @@ -49,7 +49,7 @@ testContainerUiSubimage() { assertFileContains /opt/tier-support/supervisord.conf "user=shibd" assertFileNotContains /opt/tier-support/supervisord.conf "program:hsqldb" assertFileNotContains /opt/tier-support/supervisord.conf "__" - assertFileContains /etc/httpd/conf.d/ssl-enabled.conf cachain.pem + assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf cachain.pem assertFileNotContains /etc/httpd/conf.d/ssl-enabled.conf /etc/pki/tls/certs/localhost.crt assertFileContains /opt/grouper/grouperWebapp/WEB-INF/classes/log4j.properties "/tmp/logpipe" diff --git a/container_files/tier-support/test/rebuildTestContainer.sh b/container_files/tier-support/test/rebuildTestContainer.sh index 0396b87f..7b31f21b 100644 --- a/container_files/tier-support/test/rebuildTestContainer.sh +++ b/container_files/tier-support/test/rebuildTestContainer.sh @@ -18,7 +18,7 @@ mkdir -p $reldir/slashRoot/usr/local/bin rsync -avzpl $grouperContainerGitPath/container_files/usr-local-bin/* $reldir/slashRoot/usr/local/bin mkdir -p $reldir/slashRoot/etc/httpd/conf.d -rsync -avzpl $grouperContainerGitPath/container_files/httpd/ssl-enabled.conf $reldir/slashRoot/etc/httpd/conf.d +rsync -avzpl $grouperContainerGitPath/container_files/httpd/* $reldir/slashRoot/etc/httpd/conf.d mkdir -p $reldir/slashRoot/opt/tier-support/originalFiles rsync -avzpl $reldir/etc/httpd/conf.d/ssl-enabled.conf $reldir/slashRoot/opt/tier-support/originalFiles diff --git a/container_files/usr-local-bin/libraryPrep.sh b/container_files/usr-local-bin/libraryPrep.sh index f7e9d05b..b58baa3a 100644 --- a/container_files/usr-local-bin/libraryPrep.sh +++ b/container_files/usr-local-bin/libraryPrep.sh @@ -487,6 +487,18 @@ prep_finishEnd() { echo "grouperContainer; INFO: (libraryPrep.sh-prep_finishEnd) export GROUPERUI_LOGOUT_REDIRECTTOURL=/Shibboleth.sso/Logout" export GROUPERUI_LOGOUT_REDIRECTTOURL=/Shibboleth.sso/Logout fi + if [ -z "$GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER" ]; then + if [ "$GROUPER_PROXY_PASS" = "#" ]; then + + echo "grouperContainer; INFO: (libraryPrep.sh-prep_finishEnd) export GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=false" + export GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=false + else + echo "grouperContainer; INFO: (libraryPrep.sh-prep_finishEnd) export GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=true" + export GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER=true + + fi + + fi } diff --git a/container_files/usr-local-bin/librarySetupFilesTomcat.sh b/container_files/usr-local-bin/librarySetupFilesTomcat.sh index 5aa11f23..6590c2e5 100644 --- a/container_files/usr-local-bin/librarySetupFilesTomcat.sh +++ b/container_files/usr-local-bin/librarySetupFilesTomcat.sh @@ -124,9 +124,26 @@ setupFilesTomcat_context() { results="$results $?" sed -i "s|__GROUPER_PROXY_PASS__|$GROUPER_PROXY_PASS|g" /etc/httpd/conf.d/grouper-www.conf results="$results $?" + + if [ "$GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER" = "true" ]; then + sed -i "s|__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__||g" /etc/httpd/conf.d/grouper-www.conf + results="$results $?" + else + sed -i "s|__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__|#|g" /etc/httpd/conf.d/grouper-www.conf + results="$results $?" + fi + if [ -f /etc/httpd/conf.d/ssl-enabled.conf ]; then sed -i "s|__GROUPER_PROXY_PASS__|$GROUPER_PROXY_PASS|g" /etc/httpd/conf.d/ssl-enabled.conf results="$results $?" + + if [ "$GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER" = "true" ]; then + sed -i "s|__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__||g" /etc/httpd/conf.d/ssl-enabled.conf + results="$results $?" + else + sed -i "s|__GROUPER_REDIRECT_FROM_SLASH_TO_GROUPER__|#|g" /etc/httpd/conf.d/ssl-enabled.conf + results="$results $?" + fi fi sed -i "s|__GROUPERSCIM_PROXY_PASS__|$GROUPERSCIM_PROXY_PASS|g" /etc/httpd/conf.d/grouper-www.conf results="$results $?"