Found the worst host on the Internet

Working with many disparate clients also has me working with many disparate web hosts. Web hosts run the gamut from great to poor. Most have strengths and weaknesses and may be fine for one use and not fine for another.

So it’s notable when I run across a web host working for a client that is totally abysmal and seems stuck in time, in this case around 2001. And which host would this be? Aabaco Small Business, formerly Yahoo! Small Business.

The client wanted to upgrade his phpBB 2 forum hosted there to the latest and greatest, phpBB 3.1. Looking through the rudimentary web host control panel, it looked like a challenge. Most hosts bundle cPanel or Plesk, but they rolled their own rudimentary control panel. Trying to find simple things, like a file manager and access to the database was baffling. Looking through the software my client was using was like going on an archeological expedition:

  • The MySQL database is 4.1, released in 2003. Most hosts are on 5.5 or greater.
  • PHP 4 was being used. The minor version was not identified but version 4 was first released in 2000. Most hosts are on version 5.3 or greater.

I was able to upgrade PHP to 5.3.6. There was no obvious path to upgrading MySQL but it didn’t matter as phpBB 3.1 still supports MySQL 4.

Eventually I figured out how to use FTP to upload files, so I created a folder for phpBB 3.1 like I usually do and started uploading files. When I tried to run the conversion and upgrade though it wouldn’t work. I spent a lot of time puzzling it through. Eventually I figured out that “hidden files” like the .htaccess file did not upload. Aabaco Small Business screens them out. So it was literally impossible to upgrade him at all. It also means that you cannot install most modern open source software on Aabaco because they use .htaccess files.

So we looked at rehosting options. The client already had an account on GoDaddy and wanted to move the forum there. I found phpMyAdmin was available on Aabaco, naturally a very old version. Since I could not create a backup inside phpBB (timed out) I hoped I could in phyMyAdmin with its export feature. That timed out too.

The Aabaco control panel though did have a way to make a backup of the database. When I looked at it though, it was unusable. Unlike phpMyAdmin, which would export as a number of portable SQL statements, it made binary “dump” files. Essentially I could only export it to another MySQL 4.1 database which GoDaddy does not support.

So the client is at the mercy of Aabaco tech support, basically some people in India, to make a usable backup so he can rehost somewhere else. Needless to say they have no incentive to do that.

The rehosting is on hold for now while the client chases other problems. But this takes vendor lock in to a new level. It’s the shoddiest web hosting out there. Avoid!

Digests 3.0.5 (RC4) Released

Version 3.0.5 (RC4) has been released. Download link on the first post of the phpBB Digests extension topic or on the Digests page.

Summary of changes from 3.0.4:

  • German language files updated by Praggle … thanks!
  • If a digest is sent for multiple hours, the mailer will note the successful completion for a particular hour.
  • Javascript code blocks meets coding standards
  • New ACP module to reset date when digests were last sent
  • Created a class containing common functions and integrated them into the mailer and the UCP interface
  • Cache folder has been moved to /store/ext/phpbbservices/digests
  • Digest UCP interface disabled when extension is disabled

Thanks to all for the feedback, particularly the extension writers for so many useful comments.

Out for a long lunch

I’m on vacation starting tomorrow, July 13 returning late July 17. I’ll have a laptop with me but I’m basically gone to a convention, so I don’t expect to be doing any work during this period. I’ll respond to mail but hit me with work on or after July 18.

June 2016 work summary

The first half of June was slow, so I concentrated on developing my extensions. The second half got busy, busier and frantic at times. Among the work I did in June (all client information has been anonymized):

  • PHP Notices on logging in prevented successful logins from occurring for all users for a forum. The problem was due to a PHP upgrade on the web host. It changed the behavior of the phpBB 3.0.7-PL1 forum, rendering notices on the screen. I temporarily overrode error_reporting in common.php to suppress the notices so the forums could be used. The same issue was occurring on another forum with the same host, so I applied the same fix there too. Later, I had conversations by phone and using Skype with the client. The user’s forums are highly customized to work with their in-house authentication system. Previous developers had added code to the base programs to make the integration work. So upgrading to phpBB 3.1 to fix these problems would not work without first addressing this integration in the solution. 
  • A client needed to recover a forum that broke during a phpBB upgrade. He had an old backup of the database. I created a new database and imported the backup into the new database. I then installed phpBB 3.0.12 and the German language packs for phpBB 3.0.12 and the forum came up. The user then wanted it upgraded to phpBB 3.1.9 which went without incident. However, there was a minor issue after the upgrade. Umlauts were not displaying in the forum description. I was not sure where the problem was, possibly in the MySQL database, table or column collation but it was a minor annoyance to the user so I was not asked to fix it.
  • New hosting discussion with a client. Client forgot to pay their Digital Ocean bill, so their droplet was deleted. Suggested MediaTemple.net Grid service, consolidating all her websites there. Downloaded files for the domain where the forum is hosted so it can be moved to a new host when it is selected.
  • Skype call with an existing client and his new assistant on setting up their group forum permissions properly.
  • Upgraded a forum from phpBB 3.0.12 to 3.0.14. I installed the Cleantalk mod to address annoying spam.
  • Upgraded a subsilver2 phpBB 2 forum with no obvious mods from 2.0.22 to 3.1.9. However, it took a long time due to an accidental erasure of the web root and its recovery. The upgrade was further delayed because the web host control panel did not allow PHP to be upgraded from 5.2.17. It took a couple of days for web host to upgrade PHP. I was then able to upgrade the forum.
  • Upgraded a forum from 3.0-RC2 to 3.1.9. I installed two styles. I integrated and trimmed the new logo to fit a prosilver SE style. There was a missing user_form_salt column during the upgraded which stopped the upgrade. I added the column, which allowed the upgrade to complete. I then installed the Tapatalk extension. I integrated and tested 3 BBCode additions: phpBB Media, YouTube and Font Face Changer. I installed the Danish language pack. I had to increase the size of all *bbcode_uid columns from varchar(5) to varchar(8). The user wanted titles to use the sk Porsche truetype fonts, which I integrated into the style. I updated the logo twice. Similar to the second client of the month, there were issues with umlauts. Certain users could not login due to some Danish characters in their usernames. I sought support on phpbb.com. I eventually figured out the problem myself. The username_clean column needed to be updated because the algorithm for populating this column had apparently changed and it wasn’t handled by the phpBB upgrade program. I wrote a throwaway program to fix these rows. I fixed a form submittal issue on posting by changing the board cookie. I investigated an issue why not all active topics were showing. User eventually figured it out with some guidance. I am helping him create a “custom app” on Tapatalk as part of the fee. This part is still ongoing.
  • I was sought out to help when users were unable to login to a forum. The forum was running phpBB 3.0.11 forum with lots of mods and customizations. I determined that /includes/functions_module.php had an invalid line in it, causing a statement to be invalid and a white screen on login. I compared the program to a 3.0.11 reference, patched the line and users were able to login again. The cause of the problem appears to be security software on the user’s web server. It flagged a PHP eval() command as dangerous and pulled the code from the program!
  • I upgraded Tapatalk from 1.3.6 to 1.3.7 for a client.
  • Disk drives went bad for a client with a very popular forum on a dedicated server, which ran CentOS and Plesk. As requested, I backed up files (17GB!) and the database (500MB) to my machine. In a RAID recovery attempt, the good disk volume was deleted but technical support said both drives were failing. I authorized a complete reimage. After reimaging I uploaded my backup of the files. Upon uploading, eventually I ran out of space on the var volume and extended it to 25GB. All files eventually transferred and were then moved into the correct directory for public access. I reloaded the database, which was blazingly fast on this dedicated server. I fixed directory permissions. I edited config.php to use new database password. I then reenabled board, fully recovered on a machine with two new disk drives! I recommended a cloud backup solution and hiring an ad hoc system administrator for future incidents like this. (I have some system administrator skills but don’t consider myself a professional system administrator.) 8 hours of work altogether over 3 days.