Binding Apache to a Specific Or Secondary IP Address

Running IIS and Apache in same machine [single computer] Apache, by default, will attempt to bind to and listen on these interfaces:


1. “” means ALL IPv4 addresses that the system has (including   2. “::” means ALL IPv6 addresses that the system has (including ::1). When started, Apache will try to take all the IP addresses of the system, and if you are already running another web-server (such as IIS, Tomcat, Nginx, Jetty, Domino, etc) on that same system, Apache will not be able to bind to “” and “::”, and will fail to start. Or, if started first, after binding to all the available IP addresses, it will prevent the other web-server form starting. To bind Apache to a specific or secondary IP address: Edit file – C:\WampDeveloper\Config\Apache\httpd.conf Find and replace these two lines (one is at the beginning, the other at the end) –

Listen 80
Listen 443

With –

Listen ip.address.here:80
Listen ip.address.here:443

You can specify multiple IP addresses with multiple lines. If this is a public server, make sure that the IP addresses you are using, are either the resolvable IP addresses of your Apache hosted domain names (e.g., the Public IP address), or the LAN IP addresses that the Router is port-forwarding outside port 80 and 443 traffic to. If this is a intranet server, you can just bind Apache to the LAN IP. If this is a localhost server, you can just bind Apache to Also make sure that your other web-server is binding only to a specific IP address, and not to “”. After making changes, if Apache won’t start, check the configuration by running (from the command line):

httpd -t -n "Apache2"
httpd -k start -n "Apache2"
Share this Story:
  • facebook
  • twitter
  • gplus

Leave a comment

Facebook Comment