www.austria-boston.org, an ASP 1.0 site, was hosted by a company called Burlee starting about 6 years ago. Burlee was later acquired by Interland, and ended up as a part of Web.com. The hosting fees were never adjusted and ended up being disproportionally high, so I started looking around for an alternative to realize some savings for the Austrian club.
Since I had already been a Godaddy domain customer for a number of years and their Windows hosting plans were priced at what seemed a reasonable level, I decided to try GoDaddy hosting. I went with their 2-year Economy plan at $3.19/month. I described some implementation details of the site during the sales call and was assured that the migration would be possible without any functional limitations in the new environment.
The site has now been running at GoDaddy for several weeks and it is time to summarize the experience.
The site is a rather simple ASP application with about 30 pages. There are two Access databases – one for the media library, one for some dynamic session tracking. The home page and the events calendar are rendered dynamically based on content stored in text files. The text files can be edited through a password-protected administration page. Furthermore, the site does Google screen scraping to realize the search functionality, and uses a Yahoo RSS feed for the “Austria in the news today” section of the home page. At the previous hoster, I maintained the site directly through Visual Interdev 6.0.
Migrating the Files
GoDaddy says that Visual Interdev is supported, but in reality their support could not help me. I had to upload the site via FTP. Frontpage Server Extensions are available, but need to be explicitely enabled. After uploading the site I enabled the Server Extensions on the hosting control panel and was able to access and update the web application through Visual Interdev. But on the delivery side the site gave me permission errors when it tried to open the access database files in a subdirectory for updates, and this is where the troubles started.
I did not see a way to configure directory permissions on the GoDaddy control panel, so I contacted support. By the time I got the response, which was not helpful, I had already found out that when Frontpage Extensions are active, the Directory Manager becomes unavailble on the Control Panel, because permissions are being managed by Frontpage. This is a problem, because I do not use Frontpage, and Visual Interdev does not manage directory permissions on the host. The support person declared that they cannot change permissions directly upon request, and I was eventually told on the phone during a subsequent support call that “my site was not compatible with the GoDaddy servers”. Now this is not something you want to be told by your new hosting provider after you just signed up for a 2-year contract and you diligently tried to raise any such issues prior to migrating over.
Configuring Directory Permissions
I was further told to disable the Frontpage Server Extensions again, which would bring back the Directory Manager and would allow me to configure directory permissions directly. I did that, but of course I lost the ability to update files on the server from Visual Interdev.
The directory manager became indeed available, and I configured write permissions for the directories that needed it. Unfortunately, the site now stopped working alltogether and I only got 500 errors. Support was unable to further diagnose the cause. I started stripping down the home page until it rendered as an ASP.Net 2.0 page (ASP.Net has more meaningful error messages and is much better for diagnosing issues on the server) , and I went to bed that night mentally preparing myself for a full ASP.Net conversion.
When I looked at the site a couple of days later, the 500 error was gone and most pages seemed to work fine. I do not know whether something was done on the server, or whether one of my changes took longer to propagate than it should.
Cleaning up the Rest
The pages that did not work at this point were the ones that used the Microsoft.XMLHTTP (search), MSXML2.DOMDocument (RSS Reader), and SMTPsvg.Mailer (form mail) objects. After some research I replaced them with the MSXML2.ServerXMLHTTP.3.0, MSXML2.DOMDocument.3.0, and CDO.Message – the latter at the expense of some error handling capabilities, but overall while preserving the same user experience. The RSS reader on the home page works now, but only intermittently. More often than not, the DOMDocument’s load() method fails with an access error when it tries to read from news.search.yahoo.com/news/rss. I am not sure if GoDaddy actively limits outgoing network traffic from their servers, or if Yahoo throttles the traffic that originates from GoDaddy servers. As a work-around, I am thinking about writing the response to a file now and reading it back from the file when the page cannot get a current response from Yahoo. But this is not an important feature of the site and the fact that it is not fully available does not really limit the user experience in any way. I consider the site migration complete. It was a little bumpier than I would have wished and I am not sure if I would pick GoDaddy again in this very scenario.