For the countless billions who hang with bated (or baited) breath on each word of my pontifications, whose hearts have been wracked with yearning to hear my sweet, sweet voice, and who hunger to read my concise, easy-to-follow Bible teachings, your fondest desires have been fulfilled at last. The Surly Curmudgeon is back online after several weeks in Internet limbo.
Better Is the Mortal Enemy of Good Enough
The trouble began with the expiration of a domain name which I had held for ten years without ever actually doing anything with it. I thought I had turned off auto-renewal, but then one Saturday morning a few weeks ago, I awoke to find my bank account had been charged for the renewal. As soon as I got to a place with a mobile phone signal, I called up the domain name registration provider (GoDaddy) and complained.
The account service person I contacted gladly refunded the renewal fee and cancelled the unused domain name registration, but then he happened to mention that my hosting and e-mail services weren’t the best they had available. After asking me a few questions about my Internet usage habits and needs, he proposed an attractive package. In truth, I had been considering moving my website and e-mail hosting from my old provider (1&1 Ionos) anyway, because they do not offer access to their mail servers from the websites they host. I want to eventually set up The Surly Curmudgeon to allow user registrations, to enable registered users to send and receive mail from the site, and to create a web forum using Buddy Press. I had been putting off making these improvements for a few months because to make them I would have needed to change web hosting services since Ionos doesn’t offer the necessary underlying mail services. So I considered that the need to call GoDaddy for a refund on the unused domain name had proved serendipitous, and I signed up for a total package of domain name registration, cloud-based storage, e-mail service, and website hosting.
The salesman sent me an e-mail detailing the first steps for migrating my services starting with the huppbrian.us domain name registration. Once the domain name had been transferred, the e-mail and website migrations were to be seamless and automated – totally invisible to my billions of loyal fans. Praise God He gave me the skepticism and foresight to give the salesman an alternate e-mail address for contacting me during the process. Doing so was to prove indispensable in getting the migrations finally accomplished in a not-so-seamless, not-so-automated weeks-long struggle.
When I hung up the phone, I set about initiating the process of switching the domain registration over. At the same time I turned off the automatic renewals of my services from Ionos, and that’s when the trouble began.
Fine. We’ll Take Our Ball and Go Home!
Immediately after the domain registration was transferred, The Surly Curmudgeon went down, and our e-mail boxes became inaccessible. When I logged into the Ionos control panel, a message flashed up saying that my website had been attacked, but it didn’t stay up even long enough to read. When I went to the website management control panel I was still able to access the website’s database and content files as always. But the website itself was inaccessible from any web browser, and I was therefore unable to log into it as administrator. Ionos had also shut down our e-mail service, made backups of our e-mail files, and renamed the mailboxes. We were able to access these backup mailboxes with webmail, but not send or receive new mail. The Ionos control panel displayed a friendly message saying that all of this had been done, and that all of our services could easily be restored once we switched the domain registration back to Ionos.
Of course, I immediately called Ionos to complain, and was told the same thing. In order to restore services all I would need to do was transfer the domain registration back, and turn the auto-renewal payment option back on. When I said I wanted to keep the domain registration with GoDaddy, they said that was my choice, and that it might be possible to download the backup e-mail files to my local machine so that they could be uploaded to GoDaddy’s mail servers. But they did not offer any detailed instructions on how to do that, instead vaguely mentioning that there might be some how-to documents posted somewhere in their online help system.
Not knowing what else to do, I used Filezilla to copy the entire website from the Ionos hosting server to my local machine. Preservation of my e-mail data was trivial, since I had been using a POP account on my mail client anyway, and therefore all the mail was downloaded to my local machine and erased from the server every time I accessed the mailbox. Sue’s e-mail proved harder to preserve, since she had always used web mail and didn’t have an e-mail client set up on any of her devices. Therefore she had no local copy of her mail. This wasn’t a huge issue because she didn’t have much e-mail on the server, and she doesn’t manage her contacts in web mail.
Moving the Mail
I tried to send an e-mail to the sales person at GoDaddy who had sold me the “automatic, seamless, and transparent” migration and hosting package, but got an automatic rejection from the GoDaddy mail server. Apparently, the sales team only wants to talk to you until the check clears. Finally at lunchtime one day, I took my laptop to the local Panera and connected it to the Internet while calling the GoDaddy mail migration team on my mobile phone. After waiting on hold for a half hour or so, I got connected to a very helpful e-mail migration specialist who took over my screen and uploaded my mail from my Outlook to the GoDaddy Office 365 mail servers in about twenty minutes or so. We also set up my Android Mail app with the GoDaddy Office 365 account. I thought it would be trivial to do the same with the mail client on Sue’s phone when I got home – Not so much.
I was able to set the mail app on Sue’s phone with her GoDaddy Office 365 account, but the box was (unsurprisingly) empty. This time I went to Burger King one evening with my laptop, and went onto the Ionos webmail. Upon logging into it, I found an option to export the mailbox to an Outlook .pst file, so I did so. Then I called up GoDaddy, and got them to upload Sue’s mail from that local .pst to their Office 365 servers, and set up my Outlook client with Sue’s account. Once Sue verified that she could see all her previous mail, and could send and receive new mail from her Android mail app, I deleted her account from my laptop, and the mail migration was finally complete after a little over a week.
Freeing The Surly Curmudgeon from Internet Purgatory
Moving the website proved to be more of a struggle. Having preserved all of the content files on my local machine, I called up the website migration team at GoDaddy for help. I was shocked when they told me that GoDaddy-managed website migration was NOT in fact part of the package I had purchased, but that for another hundred and something dollar one-time fee, they could get it done for me. They were kind enough to e-mail me a link with instructions for performing a manual migration myself. That highly convoluted process involved going back to the Ionos control panel and making an SQL dump of the existing website database to my local machine. Recall that I had already downloaded the site content files (and all the other files) to my local machine.
Having the needed content and database safely preserved on my laptop, I worked my way through the manual migration document. Unfortunately that document is somewhat old, and in trying to be a “catch-all” instruction set includes a fair number of inconsistencies between the screen captures in the document and what I found when logging into my GoDaddy placeholder website. In particular, the file structure of the hosting service varies from the example in the document. Nevertheless, after struggling through the document I arrived successfully at the last step – SSH into the command line of the GoDaddy web host and run a couple of commands. That was when I found out the “Basic” managed WordPress web hosting package I had purchased doesn’t allow SSH.
So I called GoDaddy once more and upgraded my account to the “Deluxe” managed WordPress web hosting package. Afterward, I tried once more to SSH into the server command line, but got booted out as soon as I entered the password. So I called up GoDaddy technical support to complain, and they quickly turned on my SSH access. By this time, though I realized that in trying to troubleshoot the SSH issue, I had possibly corrupted my new GoDaddy website, so I decided to wipe it out create a new website as the target for the migration. I uploaded the site content files to this new site. Of course that took several hours to complete using my wonderfully zippy HughesNet satellite connection. Afterward I uploaded the site database I had preserved from Ionos earlier in accordance with the manual migration document instructions (modified to fit the file structure of the GoDaddy host). The next step was to modify the database table prefixes using phpMyAdmin. It wasn’t easy to decipher the instructions for doing this in the document, but I finally figured it out. Then I came again to the final edits step of the procedure. But when I tried to do that, I found that SSH wasn’t enabled on the new site, so I called GoDaddy technical support yet again.
Once GoDaddy turned SSH on in the new website, I tried to run the needed CLI commands, but got an error message saying that WordPress wasn’t installed on the site. The error message contained a link for downloading the WordPress basic installation files, and I did so. But then I realized it had loaded them into the /home directory rather than the website sub-directory. So I deleted all of those files (a process that once again took hours over my home satellite connection). Afterward, I called GoDaddy yet one more time, but as I waited on hold while they researched the problem, I realized that the CLI commands were being run from the /home directory rather than the root directory of the website. Once I changed to the correct directory, the CLI commands ran fine, and the website came up.
After that, it was a trivial matter to assign the huppbrian.us domain (that I transferred to GoDaddy as the first step in this agonizing process) to the website, and getting GoDaddy to generate an SSL certificate for it.
Lessons Learned (Like Friendly Fire) Aren’t
In clear violation of Hodl’s First Law of Engineering – “Better is the mortal enemy of good enough.” Over the next few months in my copious free time, I hope to press forward with the improvements to the site I had initially planned when I first stepped into this website migration quagmire. To start with, I plan to change the layout of the site to make navigation a little more intuitive, and to put more of the content “up front” in a tile format rather than the clunky, old-style pull-down menu format The Surly Curmudgeon currently has. I also plan to set up the gallery on the splash page, and put up some more interesting photos and videos than the stale old one of me in my Kevlar riding in the Black Hawk. Once that’s done, I’ll set out with the original plan to implement user sign-in options, and establish a discussion forum – particularly for the Bible studies.
So for the billions upon billions of Surly Curmudgeon fans whose lives revolve around the site’s riveting content, please be patient and check back often. The Surly Curmudgeon is about to become even more fabulouser than it already is (if such a thing is even possible).