WebServer - Name-based Virtual Host Support

From The TinkerNet Wiki
Revision as of 15:38, 28 June 2020 by Tinker (talk | contribs)
Jump to navigation Jump to search

This page was created while splitting my original webserver from a single name to 3 names to make access easier. I moved the wikis to their own subdomains. At some point, I really should clean this page up to make it clearer...

(i.e.: moving it from test.tinkernow.net/wiki to wiki.tinkernow.net)
sudo vim /var/www/LocalSettings.php

Then add this to /etc/apache2/apache2.conf

NOTE: It is probably smarter to put the VirtualHost sections in separate files in the /etc/apache2/sites-available/ folder, then make symbolic links to them in /etc/apache2/sites-enabled This will simplify maintenance down the road...

<VirtualHost *:80 *:443>
    # This first-listed virtual host is also the default for *:80
    ServerName test.tinkernow.net
#    ServerAlias tinkernow.net
    DocumentRoot "/var/www/html"
</VirtualHost>

<VirtualHost *:80>
    ServerName wiki.tinkernow.net
    Redirect permanent / https://wiki.tinkernow.net/
    # This line causes http requests to be converted to https...
</VirtualHost>

<VirtualHost _default_:443>
    ServerName wiki.tinkernow.net
    DocumentRoot "/var/www/wiki"
</VirtualHost>

<VirtualHost *:80>
    ServerName labnotes.tinkernow.net
    Redirect permanent / https://labnotes.tinkernow.net/
    # This line causes http requests to be converted to https...
</VirtualHost>

<VirtualHost _default_:443>
    ServerName labnotes.tinkernow.net
    DocumentRoot "/var/www/labnotes"
</VirtualHost>

<VirtualHost *:80>
    ServerName blog.tinkernow.net
    Redirect permanent / https://blog.tinkernow.net/
    # This line causes http requests to be converted to https...
</VirtualHost>

<VirtualHost _default_:443>
    ServerName blog.tinkernow.net
    DocumentRoot "/var/www/WP"
</VirtualHost>

A set of files for /etc/apache2/sites-available:

  • www.foo.bar.conf
  • wiki.foo.bar.conf
  • labnotes.foo.bar.conf
  • blog.foo.bar.conf
  • proxy.foo.bsr.conf

and restart Apache:

  • sudo service apache2 restart