List,

*This is a cross post from Apache-HTTPD-Users but has just enough RedHat server 
relavance that a reader here might be able to comment and offer suggestions.*

Thanks in advance for any comments and suggestions offered.

Here's my scenario:

I have two (2) machines listening on IPs in the following manner:

www0 - x.x.x.2
       x.x.x.4

www1 - x.x.x.1
       x.x.x.3

DNS is configured for round-robin load sharing as follows:

www.primaryName.com. IN A x.x.x.1
www.primaryName.com. IN A x.x.x.2
www.primaryName.com. IN A x.x.x.3
www.primaryName.com. IN A x.x.x.4
www.secondaryName.com. IN A x.x.x.1
www.secondaryName.com. IN A x.x.x.2
www.secondaryName.com. IN A x.x.x.3
www.secondaryName.com. IN A x.x.x.4
...repeat 3x more for other domains ...

Each machine is running Apache 2.0.43:

ServerName www.primaryName.com:80

A single vhost is configured as follows:

#NameVirtualHost *

<VirtualHost x.x.x.N>
    # N is equal to the second IP address of the machine.
    # so for www0, N = 4.
    #inherit from global config
    ErrorLog logs/error_xN.log
</VirtualHost>

To complete this setup, I want all of the answering domain names to display in the 
client as "http://www.primaryName.com";

I'm intending to accomplish this in the global configuration with:

RewriteEngine on
RewriteRule ^(.+)$ http://www.primaryName.com/$1 [R=permanent]

As I understand it this should work, but I have not tested it in production. This 
RewriteRule should inherit to the vhost as well, correct? And would it be better to 
use a negated rule...

RewriteRule ^!(http://www.primaryName.com) http://www.primaryName.com/$1 [R=permanent]

N.B. In rewriting this post I'm seeing something I did not before. The machine will 
answer on the IPs it's configured to listen to regardless of the vhost I have defined. 
I believe my original intention of the vhost was to separate the log files out for 
reporting purposes, but have since merged all of the access_logs. I think merging the 
error_logs might be in order as well.

It seems that I want to define a vhost that looks something like:

#Uncomment NVH and listen on all IPs
NameVirtualHost *

#This vhost listens by default
<VirtualHost *>
    #inherit from global config
    ServerAlias www.secondaryName0.com www.secondaryName1.com
    RewriteEngine on
    RewriteRule RewriteRule ^(.+)$ http://www.primaryName.com/$1 [R=permanent]
    RewriteLog /path/to/log/file
    #temporarily set verbose logging
    RewriteLogLevel 3
</VirtualHost>

Finally, I'm on the fence with using mod_rewrite because of perceived, and documented, 
overhead. I think it best fits my scenario. However, I'm thinking that mod-alias might 
also work. I'm seeking feedback so... can mod_alias do this without the overhead?

Looking forward to hearing from the experiences of others. Thanks in advance for all 
suggestions and comments.


Warmest Regards,
Tim



-- 
redhat-list mailing list
unsubscribe mailto:[EMAIL PROTECTED]?subject=unsubscribe
https://listman.redhat.com/mailman/listinfo/redhat-list

Reply via email to