• 2015 - Atlantische oceaan
    2015 - Atlantische oceaan
  • 2015 - Kanoën in France
    2015 - Kanoën in France
  • 2013 - Ultralight vliegtuig
    2013 - Ultralight vliegtuig
  • 2017 - Op de MTB bij holterberg
    2017 - Op de MTB bij holterberg
  • 2016 - Ondergaande zon op de Nijl
    2016 - Ondergaande zon op de Nijl

Het is weer zover; nieuwe server ingericht, en nu moeten alle website-hosts over naar de nieuwe server.  Hier even een korte how-to hoe je dit enigszins gestructureerd aan zou kunnen pakken. :-)

Om even het verschil tussen de commando's aan te geven zet ik voor het commande neer op welke server deze uitgevoerd moet worden: source=oude server, dest=nieuwe server.

Rechten op filesysteem

Als je een nieuwe server inricht, moet je er eerst voor zorgen dat je rechten krijgen op de /var/www map, hier zet ik namelijk al mijn website's neer..

Rechten op /var/www: (Alle rechten voor de apache user, en schrijf rechten voor mijn user account.)

dest: sudo chown www-data:user /var/www/ -R
dest: sudo chmod -R g+w /var/www

Kopieren website-bestanden naar andere server:

Vanaf source kopieren:

source:/~$ cd /var/www
source:/var/www$ scp -rp sitename/  user@dest:/var/www

MySQL database overzetten:

source:/tmp$ mysqldump -u root -p --opt dbname>dbname.sql 
source:/tmp$ zip gha.zip dbname.sql
source:/tmp$ scp gha.zip dest:/tmp/

Maak in phpadmin de doel-database aan, en run dan de volgende commando’s:

dest:/tmp$ unzip dbname.sql
dest:/tmp$ sudo mysql -e 'CREATE DATABASE `dbname`;'
dest:/tmp$ sudo mysql dbname <dbname.sql

MySQL user overzetten:

  • source: Open phpmyadmin en ga naar tabje ‘Gebruikers’
  • source: Zoek de gebruiker op, en klik op ‘Exporteren’
  • source: Kopieer de SQL commands uit dit scherm.
  • dest: Open phpmyadmin en ga naar het tabje ‘SQL’
  • dest: Plak de SQL commands in het scherm, en controleer deze.
  • dest: Klik op ‘Starten’

De gebruiker is nu aangemaakt met de juiste rechten.

Apache2 site-configuratie overzetten

Eerst (eenmalig) alle geactiveerde site overzetten naar de nieuwe site in een tijdelijk map:

source:/~$ cd /etc/apache2/sites-enabled/
source:/etc/apache2/sites-enabled$ scp -rp *.conf  user@dest:/tmp/

Dan per website de configuratie instellen, controleren en activeren:

dest:/etc/apache2/sites-available$ sudo cp /tmp/sitename.conf ./
dest:/etc/apache2/sites-available$ sudo nano sitename.conf

Controleer met nano of alle settings of deze kloppen!

dest:/etc/apache2/sites-available$ sudo a2ensite sitename.conf
dest:/etc/apache2/sites-available$ sudo systemctl reload apache2

Troubleshooting

Als het goed is wordt de de site nu geladen, maar mogelijk mis je nog een apache2 module die je nodig hebt.. daarom nog even een paar troubleshooting commands:

systemctl status apache2.service
tail /var/log/apache2/sitename-ssl-error.log

sudo a2enmod ssl && sudo service apache2 restart
sudo a2enmod headers && sudo service apache2 restart
sudo a2enmod proxy_http && sudo service apache2 restart
systemctl status apache2.service

Disable oude apache2 config.

Als alles werkt en de dns omgezet is, kun je op de oude server de site uitschakelen:

source:/~$ sudo a2dissite gha.conf
source:/~$ sudo service apache2 reload

You have no rights to post comments