Hello, I have two domains say for example site1.co.uk and site2.uk
I have set my web directory up to be like /var/www/site1.co.uk/www and /var/www/site2.uk/www.
For the vhost conf file for each domain, I have pointed the docroot to the nessesary directory.
Here is an example of my config files:
site1.co.uk.conf
<VirtualHost *:80>
ServerAdmin email@site1.co.uk
ServerName site1.co.uk
ServerAlias www.site1.co.uk
DocumentRoot /var/www/site1.co.uk/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
site2.uk.conf
<VirtualHost *:80>
ServerAdmin email@site2.uk
ServerName site2.uk
ServerAlias www.site2.uk
DocumentRoot /var/www/site2.uk/www
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
I have also ran these commands:
a2ensite site1.co.uk.conf
a2ensite site2.uk.conf
service apache2 reload
Now when I enter site1.co.uk or www.site1.co.uk in my browser. No problem. The website loads, the correct doc root loads etc.
When I load site2.uk or www.site2.uk it just redirects to www.site1.co.uk. I have installed a headers extension on my browser and it is telling me it gives Status: HTTP/1.1 301 Moved Permanently.
Can anyone give me pointers how to correct this issue?
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Hi, I have the same problem. In apache2.conf I added
test.fruity.co.il.conf:
I’ve created a ssl using
sudo certbot certonly --apache
for the domain test.fruity.co.ilAlso added the record to the DNS (in digitalocean).
When accessing https://test.fruity.co.il it redirects to exist domain https://communinities.org.il.
The new site is enabled and found in /etc/apache2/sites-enabled.
How to trace it? Where’s my error?
Thanks all for your help, I hate to admit this but total noob mistake on my part. I hadn’t updated the nameservers of my domain at my registrar. They were still pointing to godaddy which I had set up to redirect to aparkermedia.uk while I was building the site. I have updated these now and waiting for them to propagate.
@arronparker93
As long as the VirtualHosts actually look like the below for each domain – i.e. each definition is set on a new line.
Then your Apache configuration looks good. So let’s look elsewhere…
When performing a DNS lookup on your domain names, the only valid entry I see, other than your MX, is a single A entry for each domain.
When looking at your VirtualHost configuration, you’re setting a
ServerAlias
that defines thewww.
access point for each domain, but you’re missing a DNS entry on both domains that pointswww.
to your domain. Since the DNS record isn’t set, Apache will handle it the best way it knows how, which may or may not be correct.So what I would recommend doing is adding an A entry to each domains’ DNS records. The A entry should point to the same IP that your domain points to (i.e. the public IP of the Droplet).
So
www
should be an A entry that points to46.101.19.243
in your case. Since it looks like your using DigitalOcean for your DNS, you can make these changes through their control panel and the updates should take effect pretty quickly. If they don’t, you may need to clear your browsers cache and then try to access your domains again.If the DNS updates do not fix the issue, then we’d need to check the logs and potentially even the actual configuration for Apache.