Celtic Mad

Member
Feb 21, 2004
19
0
151
I have 6 IPs and was wondering can I have the other 5 redirect to my site so when someone puts in any of the 6 IPs they come to my website?
 

dave9000

Well-Known Member
Apr 7, 2003
888
1
168
arkansas
cPanel Access Level
Root Administrator
Sure you can. Its going to have to be done manually but it can be done. Apache will always default to the first entry for a ip address if it does not find a valid virtual host entry so therefor just add 5 entries to the httpd.conf 1 for each address and set the path to the web you wish to display.

NameVirtualHost 1.1.1.2
<VirtualHost 1.1.1.2>
DocumentRoot /path to web
</VirtualHost>

NameVirtualHost 1.1.1.3
<VirtualHost 1.1.1.3>
DocumentRoot /path to web
</VirtualHost>

etc

Add additional entries to the VirtualHost container according to your needs
 

Celtic Mad

Member
Feb 21, 2004
19
0
151
dave9000 said:
The actual file path to the website you wish to come up when they access that ip

as in

DocumentRoot /home/foo/public_html
ok thanks, I have added them into httpd.conf

Does it take a while to resolve?
 

chirpy

Well-Known Member
Verifed Vendor
Jun 15, 2002
13,437
33
473
Go on, have a guess
dave9000 said:
Sure you can. Its going to have to be done manually but it can be done. Apache will always default to the first entry for a ip address if it does not find a valid virtual host entry so therefor just add 5 entries to the httpd.conf 1 for each address and set the path to the web you wish to display.

NameVirtualHost 1.1.1.2
<VirtualHost 1.1.1.2>
DocumentRoot /path to web
</VirtualHost>

NameVirtualHost 1.1.1.3
<VirtualHost 1.1.1.3>
DocumentRoot /path to web
</VirtualHost>

etc

Add additional entries to the VirtualHost container according to your needs
You can actually simplify that if they're all going to the same place by listing all the IP addresses in the one VirtualHost container of the main site:

<VirtualHost 1.1.1.2 1.1.1.3 1.1.1.4>

;)
 

computica

Member
Jun 14, 2008
19
6
53
Hate to dig up an old thread but I'm looking at this a couple years later and wondering if anything has changed with the procedure. We are running WHM/Cpanel and when viewing the httpd.conf it shows that these lines should not be edited and that an include file should be used instead.

To give a little background, we are looking into getting some redundancy for our server's internet connection and need to know how to setup the WHM/Cpanel server itself to accept traffic on both the primary and the secondary (failover) IP addresses. We will be using dnsmadeeasy to handle the DNS part of the equation, we just need to make sure the server is ready to accept the traffic once people are directed to the new IP.

In short, what needs to be done to set this up to work properly on our WHM/CPanel server?
 

computica

Member
Jun 14, 2008
19
6
53
Hate to dig up an old thread but I'm looking at this a couple years later and wondering if anything has changed with the procedure. We are running WHM/Cpanel and when viewing the httpd.conf it shows that these lines should not be edited and that an include file should be used instead.

To give a little background, we are looking into getting some redundancy for our server's internet connection and need to know how to setup the WHM/Cpanel server itself to accept traffic on both the primary and the secondary (failover) IP addresses. We will be using dnsmadeeasy to handle the DNS part of the equation, we just need to make sure the server is ready to accept the traffic once people are directed to the new IP.

In short, what needs to be done to set this up to work properly on our WHM/CPanel server?
Resurrecting once again since we are looking once more into setting this up. We need cPanel to accept web traffic (and preferably also mail traffic) FROM more than one IP TO a single cPanel account.

Thanks for any pointers.
 

Spiral

BANNED
Jun 24, 2005
2,018
8
193
The configuration part really has not changed and remains the same as
it was back when this thread originally began despite the current use
of include files.

You would need to expand the virtualhost container to include the new IPs
and then of course update your DNS zone files to also resolve the new IPs.

Now if this is all on one server with a single network interface running
multiple IPs, there is no real tactical advantage to doing this and it
won't do anything in terms of "load balance" or "failover" because you
are running off of the same physical machine so one down is all down.

If you are dealing with multiple physical network interfaces, that might
be a different issue but again limited if you are running the same server
as would be the case for this sort of configuration.

To have any kind of real "failover" type configuration for multiple IPs,
those IPs would actually be on different servers and the DNS would be
setup to load balance between the multiple servers running mirrored
accounts between each other each on their own IP but with the
same domain address.
 

computica

Member
Jun 14, 2008
19
6
53
The configuration part really has not changed and remains the same as
it was back when this thread originally began despite the current use
of include files.

You would need to expand the virtualhost container to include the new IPs
and then of course update your DNS zone files to also resolve the new IPs.

Now if this is all on one server with a single network interface running
multiple IPs, there is no real tactical advantage to doing this and it
won't do anything in terms of "load balance" or "failover" because you
are running off of the same physical machine so one down is all down.

If you are dealing with multiple physical network interfaces, that might
be a different issue but again limited if you are running the same server
as would be the case for this sort of configuration.

To have any kind of real "failover" type configuration for multiple IPs,
those IPs would actually be on different servers and the DNS would be
setup to load balance between the multiple servers running mirrored
accounts between each other each on their own IP but with the
same domain address.
Thanks for the reply. We aren't looking for traditional "failover" in terms of the server itself, just in terms of the internet connection to the server. Web hosting is not our primary business and we maintain our own server with about 30 sites located our office. Our primary connection is via Cable which isn't 100% reliable, so our main concern is having a backup connection (DSL most likely) that will allow the sites/email to remain live while whatever issues with the primary connection are resolved.

The server itself is virtualized and we have multiple backups, so we're not too concerned with redundancy in that department. Load balancing is also not an issue since we have a lot more power than what is required for the small amount of sites we host.

Could you possibly point me in the proper direction in terms of setting up the include files to make this possible?

Thanks,
 

Spiral

BANNED
Jun 24, 2005
2,018
8
193
You could put the directives in the pre_virtualhost_global.conf file
located at /usr/local/apache/conf/includes if you are looking to make
modifications to all sites.

You could theoretically add a new conf file to the virtualhost custom
configuration path for each domain but I suspect this probably won't
work as Apache goes with the first directive it sees and in this case
would be that of loading the single IP address but in any case, the
location to add custom virtualhost config files is at:
Code:
/usr/local/apache/conf/userdata/std/2/(login)/(domainname)
Alternatively, if you have specific sites you want to expand the IP address,
you could duplicate the virtualhost section for those accounts but instead
label them under the new IP address(es) in their own new virtualhost
sections and put that code in the following file:
Code:
/usr/local/apache/conf/includes/post_virtualhost_global.conf
Any changes you make, it's probably good to go ahead and run the
update script for Cpanel's apache handling so that it knows about
the changes that you have made afterwards:
Code:
/usr/local/cpanel/bin/build_apache_conf
Now if you are wanting to do this for all sites, I myself would probably
just update the main virtualhost template and add the extra IP addresses
to the virtualhost section in the base template:
Code:
/var/cpanel/templates/apache2/vhost.default
Perhaps take the following ...
Code:
<VirtualHost[% FOREACH ipblock IN vhost.ips %] [% ipblock.ip %]:[% ipblock.port %][% END %]>
And change it to something like ...
Code:
<VirtualHost[% FOREACH ipblock IN vhost.ips %] [% ipblock.ip %]:[% ipblock.port %][% END %][b] x.x.x.x:80 y.y.y.y:80 z.z.z.z:80[/b]>
Theoretically, you would still need to add the respective NameVirtualHost
command in the main httpd.conf but since Cpanel uses a wildcard entry
as the last entry, this might not be totally necessary.

If you try the later approach updating the templates, don't forget to
rebuild your apache configuration afterwards for those changes to
take effect and then restart you Apache server process either way.

Hope that helps