You are also grossly abusing mod_rewrite for this. It isn't needed at all. Use FallbackResource, Redirect, and separate vhosts, as Igor mentioned. On 11/06/19 01:33 AM, Igor Cicimov wrote: > Since you already have two separate domains why not use virtual hosts > each with it's own document root? > > IC > > On Tue, Jun 11, 2019, 9:18 AM Jim Weill <moondog@xxxxxxxxxxxxxxxxx > <mailto:moondog@xxxxxxxxxxxxxxxxx>> wrote: > > We have a test server, with test sites that are in two different > branches of development, but essentially the same base content. > They live at /x/y/z/testsite and /x/y/z/test-site. We have other > sites such as wikis and one-offs which need to stay online on our > production server, and I have been testing using rewrites to force > the URL to conform to the directory path that is defined in the > .conf file. > > So for example, in the testsite.conf file, I have the following: > RewriteEngine On > RewriteCond %{HTTP_HOST} ^www.example.com <http://www.example.com>$ [NC] > RewriteRule ^/$ https://testsite.example.com/testsite/ [L,R] > > alias /testsite "/x/y/z/testsite" > <Directory "/x/y/z/testsite"> > Require all granted > RewriteEngine On > RewriteBase /testsite > RewriteCond %{REQUEST_FILENAME} !-f > RewriteCond %{REQUEST_FILENAME} !-d > RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] > RewriteCond %{HTTPS} Off > RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} > RewriteCond %{HTTP_HOST} !testsite.example.com > <http://testsite.example.com> > RewriteRule ^.*$ https://testsite.example.com%{REQUEST_URI} [R] > </Directory> > > The test-site.conf file is the exact same except for adding the > hypen in the names. > > We also have the following in ssl.conf for these: > RewriteRule ^(.*)/testsite$ $1/testsite/ [R,NC] > RewriteCond %{HTTP_HOST} testsite\.example\.com > RewriteCond %{REQUEST_URI} ^/testsite(.*) > RewriteRule (.*) > https://testsite.example.com%{REQUEST_URI} [R] > RewriteCond %{HTTP_HOST} testsite.example.com > <http://testsite.example.com> > RewriteCond %{REQUEST_URI} ^/$ > RewriteRule (.*) > https://testsite.example.com/testsite/ [R] > > RewriteRule ^(.*)/test-site$ $1/test-site/ [R,NC] > RewriteCond %{HTTP_HOST} test-site\.example\.com > RewriteCond %{REQUEST_URI} ^/test-site(.*) > RewriteRule (.*) > https://test-site.example.com%{REQUEST_URI} [R] > RewriteCond %{HTTP_HOST} test-site.example.com > <http://test-site.example.com> > RewriteCond %{REQUEST_URI} ^/$ > RewriteRule (.*) > https://test-site.example.com/test-site [R] > > > If I leave this as shown, and restart the service, neither page > loads at all. If I comment out the three lines after "RewriteRule > ^(.*)/testsite$" and "RewriteRule ^(.*)/test-site$" respectively, > the sites load properly. We have this exact set of rewrites on > ssl.conf for all sites on the production server and it rewrites the > URL properly. So I'm not sure where it's failing on the test site. > Logs are set to trace8 on the test server and I'm not getting > anything that helps tells me where the problem is. > > > jim > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx