There are a ton of hosting companies out there with a wide variety of prices and service levels. I work with many of them when installing Gallery Server Pro, and I thought I should share a few things I’ve learned.
You’ve seen the ads—they’re everywhere and they offer some of the lowest prices available. However, I spent several hours yesterday working with a customer and we were ultimately unsuccessful in getting GSP working. He has since moved to Arvixe where things are running smoothly. There were two main issues:
CREATE DATABASE permission denied in database ‘master’. When you modify the connection string in web.config to point to an existing SQL Server database, Entity Framework Code First Migrations (triggered from GSP startup code) is supposed to detect the existing database and ensure its tables are updated to the current version. In our case, EF didn’t think the database existed and tried to create it. Since 1and1.com wisely prevents code from creating databases, we get the error.
EF should have detected the existing database, and I still don’t know whether it’s a bug in EF or some kind of configuration issue with 1and1.com. I also don’t know whether this is limited to a particular web server at 1and1.com or whether they all behave this way. I found a forum thread where the same issue is happening with a couple other web hosting companies.
Web.API calls failing. GSP uses AJAX callbacks to provide a responsive user experience, and these are done using the Web.API library. These calls were also failing at 1and1.com with a 404 File Not Found. For example, when I tried to sync, I saw this error:
This issue can sometimes be fixed by adding runAllManagedModulesForAllRequests=”true” to the modules element in web.config, but at best that is a performance-sapping fix and at worst doesn’t even work. In our case, it didn’t work. Ultimately, this is caused by some kind of server configuration that I haven’t yet figured out. As with the create database error, I don’t know if the issue applies to all 1and1.com servers or just particular ones.
Finally, I found the 1and1.com control panel to be slow, counter-intuitive, and limited in terms of features. Because of these issues, I cannot recommend this company.
GoDaddy is another 800 pound gorilla in the web hosting space, and I know of several galleries successfully being hosted there.
But there is a big catch. GoDaddy forces web applications to run in medium trust. Although Gallery Server does run in medium trust, some features are not available. For example, you will not be able to extract certain metadata properties (title, keywords, GPS coordinates, and IPTC data). You also cannot use the Binary Pack utilities for transcoding video and audio files and EPS/PDF thumbnail generation. And finally, Gallery Server has to resort to the older, slower GDI+ technique for image generation rather than the new, faster WPF algorithm.
Also, I have found their web tools to be difficult to use and limited, but they get the job done. I don’t have an official recommendation on whether or not to use GoDaddy, but it’s fair to say I like others better.
Arvixe is a large and fast growing company that offers a range of plans starting as low as $5/month. In my experience, they offer an excellent balance of low prices and good service, so I do recommend them as an option. A few years ago, I teamed up with them to create a referral relationship, so take my advice with the proper skepticism and do your own research.
There are a few important things to note about Arvixe:
- Their cheapest plan is best for small galleries. The PersonalClass ASP plan, at $5/month, is limited to 250 MB of shared RAM. Any time the app goes over this, it recycles. This is a frequent cause of synchronization failures in GSP, as the process of iterating through media files and building thumbnail and optimized images eats up a lot of memory very quickly. I recommend the minimum plan you buy is the BusinessClass ASP Plan.
- Must disable 32-bit application pool compatibility. By default Arvixe configures the application pool so that the option “Enable 32-Bit Applications” is set to true. When you install the GSP Binary Pack, FFmpeg is used to create web-optimized versions of video and audio files. However, the 32-bit setting causes the transcoding process to intermittently fail after a few seconds, creating corrupted files. The solution is to create a support ticket and ask that this option be disabled (set to false) for the website.
- GhostScript support. GhostScript is one of the utilities included in the Binary Pack that provides support for EPS and PDF thumbnail generation, but it can only be installed by running the setup program on the server. Many web hosting companies won’t let you do this or refuse to do it for you when asked, but Arvixe will do it if you ask them. So, if you discover that you don’t get thumbnail images from your PDF or EPS files, even after you’ve installed the Binary Pack in your gallery, you probably don’t have GhostScript installed on the server. Create a support ticket and ask them to install the 32-bit and 64-bit versions of GhostScript. Yes, both. Even though the servers are all 64-bit, in some cases the 32-bit version is required. If they give you any pushback, search for GhostScript in their forums and point them to those discussions where it’s been done before.