Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NameVirtualHost *:80 has no VirtualHosts

I have two domain names, two ssl certs and two ip addresses. I am trying to configure my apache virtualhost files for them.

First, i commented out all instances of "NameVirtualHost" and "Listen" for ports 80 and 443. Then i did the following with my virtual hosts files.

VirtualHost file for domain1:

NameVirtualHost 1.1.1.1:80 Listen 1.1.1.1:80 Listen 1.1.1.1:443 <VirtualHost 1.1.1.1:80>     ServerName domain1.com     ... </VirtualHost> <VirtualHost 1.1.1.1:443>     ... </VirtualHost> 

VirtualHost file for domain2:

NameVirtualHost 2.2.2.2:80 Listen 2.2.2.2:80 Listen 2.2.2.2:443 <VirtualHost 2.2.2.2:80>     ServerName domain2.com     ... </VirtualHost> <VirtualHost 2.2.2.2:443>     ... </VirtualHost> 
like image 332
Jay Avatar asked Aug 23 '11 18:08

Jay


2 Answers

I had ignored the same error for the 2 months I have had an Ubuntu server. I found this post nicely solved the error. Thank you Michael!. As did you Jay, I found the culprit at /etc/apache2/ports.conf . I tried simply this:

# NameVirtualHost *:80
I only commented out that line and no other changes and no more

"NameVirtualHost *:80 has no VirtualHosts"

like image 77
Randy Skretka Avatar answered Oct 25 '22 14:10

Randy Skretka


Somewhere in your configuration, probably in the Apache default configuration file (I think /etc/apache2/httpd.conf in Ubuntu? someone can correct me in the comments), is a line that looks like:

NameVirtualHost *:80  # Also Listen 80 Listen 443 

Comment them out, and in your VirtualHost configuration files, add:

Listen 111.111.111.111:80 Listen 222.222.222.222:80 # If also using SSL Listen 111.111.111.111:443 Listen 222.222.222.222:443  NameVirtualHost 111.111.111.111:80 NameVirtualHost 222.222.222.222:80 

In many default Apache configurations, the Listen and NameVirtualHost directives are supplied with wildcards, or globally to apply to all network interfaces. Since you're using multiple IP addresses bound to different configurations, you need to be more specific in your config directives than your distribution's default config file.

like image 41
Michael Berkowski Avatar answered Oct 25 '22 12:10

Michael Berkowski