Need feedback - What are the elements of a good hosting service?

Skip Montanaro skip at pobox.com
Wed Mar 6 17:28:39 EST 2002


Yesterday afternoon I posted a note soliciting input on what people feel the
main issues are related to web hosting services, at least vis a vis Python.
As I indicated, I think the secondary issues may be more important than the
more obvious "primary" issues.  Let me expand on that a bit.  My goal is to
create a hosting page for the python.org website that will be useful to
people looking for a Python-friendly web hosting service.  Simply listing
all hosting services that provide a Python interpreter probably won't be too
useful.

Here are what seem to me to be the so-called "primary" questions to ask:

    * Is Python available?  What version(s)?

    * Can I install a private version of Python?

    * Can I write my own CGI scripts?

    * How do I set up my website?

    * How many system resources can I use (disk space, bandwidth, email
      messages, whatever)?

    * How much does it cost?

Most of these questions are readily answered.  In fact, except for the last
two, I can probably answer them pretty accurately for any given hosting
service: yes; 1.5.2 & 2.1; yes, for shell accounts; yes; FTP, Front Page or
ssh/scp, depending on the OS and web server running.

I've developed and/or maintained two websites for Mojam for several years
now.  As such, I've been in pretty much full control of the environment.
One of the server machines I run is keeping my legs warm as I type this.
Over the years, I'd taken lots of stuff for granted:

    * root access

    * easily set up mailing lists

    * start/stop the web server itself and other related software (database
      servers, sendmail, etc)

    * set up long-running processes for any of a number of reasons
      (monitoring, background file processing, etc)

    * browse Apache access/error logs and configuration files (and modify as
      necessary)

I recently signed up with a hosting service to work on my own corporate
website and to experiment with Webware.  While they are a reputable company
and I'm happy so far with the answers to the primary questions, some of the
secondary issues have caused me more trouble than I had anticipated.  Here
are the stumbling blocks I've run into:

    * Although they made it easy to view my server's access log, I couldn't
      tell how to view the error log (that's where the Python traceback
      winds up with you muff something).  I asked.  Turned out there is an
      undocumented command available to execute to view your recent error
      log contents.  Because it's a shell-based service, the machine is
      pretty tightly locked up, so browsing to see what's available is
      pretty much out of the question.  (I can't "ls /usr/local/bin", for
      example.)

    * Though their Acceptable Use Policy said they'd consider long-running
      programs on a case-by-case basis, when I asked about a specific case
      (running Webware/WebKit's AppServer), I got an immediate "no".  Even
      though I explained that allowing me to run AppServer would actually
      reduce CPU resource usage by avoiding startup/shutdown overhead, I
      have yet to resolve this issue with them.  (They can boot me for
      violation of their AUP.  What recourse do I have if they violate it?
      ;-)

    * Even though this hosting company supports Python (1.5.2 and 2.1 are
      installed), and I know they use it heavily in their back office, it's
      clear their front-line support staff aren't well-versed in Python
      usage.  When I approached them about one problem I was having with a
      CGI script, they ran it at the shell prompt without setting the proper
      environment variables (like REQUEST_METHOD), saw the traceback and
      concluded it was broken.

    * My almost idle webserver was getting lots of clear breakin attempts -
      accesses to paths like /scripts/..%255c../winnt/system32/cmd.exe.  I
      reported this to them and suggested it would be not much more
      difficult for them to block and report such malicious accesses for
      their entire suite of servers than for me to block on an IP-by-IP
      basis.  After several go-rounds I finally got a note from one of their
      sysadmins indicating they would block on the machine my virtual server
      resides on.  No word on actually reporting the bad guys.

As you can see, these startup issues have very little to do with Python.
They do lead me to a set of secondary questions, however:

    * What facilities or commands are available over and above the usual
      Unix or Windows stuff?  Corollaries: What non-standard Python
      libraries are installed? PIL? Zope? MySQLdb? How up-to-date are they?
      How complete is their documentation?

    * What about long-running programs?  Really?

    * How well do front-line support staff understand basic Python issues?

    * How well do they operate as responsible net citizens?  Do they go
      after the bad guys or is that your problem?

I'm not sure those questions form a complete "basis set" of questions whose
answers will help people make intelligent decisions about a hosting service,
but had I known to ask them ahead of time, I would have had a somewhat
easier introduction to the realm of web hosting.

How do other peoples' experiences jive with mine?  What do you feel it
important to ask going into the process over and above what I've referred to
as the "primary questions"?  Do you agree that those that seem important to
me are actually of general importance?

-- 
Skip Montanaro (skip at pobox.com - http://www.mojam.com/)




More information about the Python-list mailing list