You are here
Deploying Websites as a Freelancer
Having a certain amount of control over the production server for your completed project can save you a lot of headaches. This includes doing the initial setup, and continuing to make adjustments so that shiny new website performs it’s very best. Someone else may have paid you to create it, but it’s still “your baby”.
Unless you are deploying a static html website, don’t even bother looking at the bargain-bin $3 shared hosting services. With shared hosting, you have no control of the system environment that serves out your project. And in many cases, there are onerous restrictions and non-optimal configurations. Meaning: many of the php and apache modules you may rely upon, are not allowed or available, and the sql database could be hosted on a separate overloaded server with a very laggy connection.
This leaves you with a few options such as: Hosting the site yourself, having your client host it on a server you control, or hiring out a local IT person to manage it for you. I say “local” because it’s just easier to work with someone in person, face to face.
The other reason to ensure that you have full control of the end hosting system, is to prevent your project from being forced to run on a system that it is not designed for.
An example of this: Is trying to force Drupal to run on current versions of IIS and Windows Server. Drupal’s official documentation does not support IIS versions above 7.0, and many major modules are designed to run on Apache in a Linux environment, not IIS+Windows. Trying to “hack” the code to “make it work anyway” is just plain foolish and sets you up for failure.
Don’t Do It.
Maintaining a “dev” version of your project on the same server is another thing to consider. This allows you to work on expansions and bug fixes without your audience seeing breakage as you code things into existence. It also makes it easier and faster to update the website to the new version.
My recommendations are based on my own personal experience and systems admin knowledge, so your mileage may very. Choose the options that you’re comfortable with, and have time to deal with.
Take care in how much responsibility you are willing to accept.