It's the following part of a virtual host config that I need further clarification on:
<VirtualHost *:80>
# Admin email, Server Name (domain name), and any aliases
ServerAdmin [email protected]
ServerName 141.29.495.999
ServerAlias example.com
...
This is and example config, similar to what I currently have (I don't have a domain name at the moment).
<VirtualHost *:80>
- Allow the following settings for all HTTP requests made on port 80 to IPs that this server can be contacted on. For instance, if the server could be accessed on more than one IP, you could restrict this directive to just one instead of both.
ServerName
- If the host part of the HTTP request matches this name, then allow the request. Normally this would be a domain name that maps to an IP, but in this case the HTTP request host must match this IP.
ServerAlias
- Alternate names accepted by the server.
The confusing part for me is, in the above scenario, if I set ServerAlias mytestname.com
and then made an HTTP request to mytestname.com
, there would have to be a DNS record pointing to the server's IP for this to work? In which case, is ServerAlias just basically EXTRA ServerName entries?
Say I had a DNS entry such that foobar.com = 141.29.495.999
but then I had ServerName = 141.29.495.999
and ServerAlias
was empty, would that mean that although foobar.com gets resolved to the right IP, because there is no reference to accept foobar.com in ServerName
or ServerAlias
?
Or something. Man I'm confused.