Old website migrations

This was an interesting one. Its vacation times and here in Sweden its raining cats and dogs so I’ve had to do something. Actually progress have been made on all fronts in my homelab but this have been bugged me for quite some time.

Here a screenshot might explain how I have, over the years had a passion to self-host websites. I have has so many web servers that my firewall rules address-book was completley fucked up. I cant afford tools like Alogsec to run in my homelab 🙂

I removed the IPv6 entries for obvious reasons, but you get the picture. Plenty of web servers, most of then Running ISPConfig https://www.ispconfig.org/ as its a great tool for managing websites, i dont like the “control panel” termology as its more than just a fancy interface – it does all the heavy lifting

Anyways a few ISPConfigs later its 2025 and its time to consollidate. I have really an insane number of domains (20+) and not all of them are in use, but I’d like to move their static pages over. I might deploy a simpler dynamic website that will show a static page and perpahs a message if the domain is for sale or not, did that for an client earlier who had over 100 domains but thats a task for future me. Now its time to kill servers 😂

Lets move stuff

So I ‘ve started to list the sites I’ve had, if they had databases and what not. I decided that I should verify if the site actually worked after migration. This i knew was a huge task, normally should be quite easy but some of my websites are 15-20 years old and by that I mean they have not been updated in 15-20 years, it’s like starting windows 2000 in 2025 (almost 😂)

Most sites where developed in PHP 5 – Today you have PHP 8 – Completley different beast, perhaps I’ve used YouTube’s API – Well that’s gone since 10 years. Can I use the twitter API? hmmm. And yea Google Analytics can that work?

But lets not go ahead of ourselves here, lets get the dam sites over first. This is actually a trivial task, just create a tar.gz archive of the sites, make a MySQL dump and reverse the process. Here I’m not using scp to copy the files, this would be easiest instead I’m dumping them to my NAS (so I have a backup, important, more on that later) and then. I transfer the files from my NAS to the new shiny ISPConfig from 2025.

Here I’ve decided on a Centos Stream 9 VM I’m a suxxer for Centos, its just how its been as I’ve always used RedHat in the past. I might transition over to RockyLinux or Fedora however at some point but I’ll take small steps here. When you’re self hosting stuff with over 100 VMs in your homelab you want to go slowly.

Creating new websites, databases, users is of course really easy in ISPConfig and restoring data was easilly done. Unfortunatly ISPConfig does not have any free tools to do that for you but extracting archives and and database dumps are not complicated – well unless you’re an idiot and had an hard time remembering what web user I’ve used in source and destination. Once I managed to move a site to this exact wordpress instance and got a new shiny index.php file that should not be in a word-press installation. At the moment I only have VM level backups (will be fixed) and I didn’t feel to restore an entire VM to get an index.php file from my wordpress site – so I’ve just took it from somewhere else – problem solved.

Yes its true – its alive

So now things are progressing in the right direction. I will try to “start” the old websites first. But first lets do some work on the reverse proxy side of things. As this is a new webserver things have changed on this side as well. A new firewall was introduced together with a new reverse proxy, this will be covered in later blogs or videos but for now I just need to add the FQDN and make a few DNS changes

I’m running my own DNS servers (on two different ISPs) so no need to wait here. Or wait 🤦 – I have lost some domains for my websites – once could of course argue aboue the logic in keeping websites that no longer have their own domain but for me its thousands or several thousands hours of programming work behind these websites and I just cant delete them, and here the purpose is not to “launch” all of these, I just want to know if they can still work so I know the migration was successful.

One step later I’ve re-registered the domains, so will it work now?

First attemt – No no no

Well that was expected. Some paths have changed, despite running PHP 5.7 the sites was developed on 5.1 and some things have changed, for eample using <? instead of <?php – Instead of making changes to php I’ve just run a search replace to get this done.

Even after doing that things did not load, this was due to the fact that I’ve replaced a file based CMS template system with a database one, I just forget about that. So I’ve had to replace some more things in my database to get things working.

But now it will work? no?

Actually – Great success – It worked and I saw one websites I have not seen for over 10 years in its full glory – I’m so happy. I cant test all things as the website’s database has a date verification method, if some of the data is older than 12 months it wont show up as it should have been updated by now. This is of course easy to “force” by changing date on the data but I don’t really want that as the website is no live..

I did however hit a minor snag. The server I was migrating from was not it’s original server as you might have figured out based on the firewall rules above. So this migration the database where never deployed. WHAT.. So I was missing the database.

It turned out I did follow the same procedure this time as last, meaning I did a database dump to my NAS so there I had all databased dumps, I just didnt complete the last migration as these where old websites that ISPConfig couldnt use. But in recent releases you can pick the PHP version i the GUI and PHP 5 is still available – Thats was the peace that was missing last time (that I’ve forgot about)

Instead I’ve moved on to the next website and more or less encontered the same issues as the first one – I’ve fixed that and was able to get this website loadead as well, last time it was online was in 2010……

I still have some few more static ones to migrate and one that was developed during COVID-19 and I’m not sure i want to bring that back, I might just copy over the data and database.

Now i’ll just have to complete the rest of the migrations so I can shut down one more VM hosting incomplete websites for no reason and one more webserver an database server hosting a single website that should have been moved to ISPConfig VM years ago.

Welcome to the wounderful world of home infrastructure

This might be a beutiful new experience for me. Follow this space for exiting homelab extreme. I will be sharing things that you most homelabbers, and some enterprises wont come close to.

This might be a beutiful new experience for me. This WP site is starting over from a fresh start, Ansible helped me deploy the OS, On top of that I’ve added a fresh new ISPConfig – my favourite self-hosting webhosting control panel. Traffic is now routed using a new fresh ARR (Application Request Routing) reverse proxy (Yes I’m running a windows based reverse proxy, crazy isn’t it)?

I will use this space to show you how to be a homelab expert that will help any enterprise IT professional   😜

On top of that a new virtual firewall was added just for the purpose severing the internet with content like this from another ISP – Why not use both when you have?

Expect to read content that you might not see anywhere else, and see new ways of solving IT infrastructure problems.

Welcome