Re: mod_rewrite question on directory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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> 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$ [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
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
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
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

[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux