Web Servers (part 2)
Although most if not all of the technical aspects of the development will be defined by the developer, the client may stipulate certain constraints, such as server location, type and operating system which must follow corporate IT policy. There may be an in-house post-development team ready to take up the reigns upon delivery, people whose skillsets embrace specific server-side scripting such as PHP rather than ASP, or the criticality of operation may mean that JavaScript on the client browser is ruled out.
Assuming little or no constraints or with clients possessing little or no IT knowledge, the developer must assume responsibility and determine the better hosting platform for the site, suitable to meet functionality, uptime reliability, anticipated bandwidth and, on tightly tendered projects, hosting costs.
There are currently four major platforms – web servers – available: Apache, Internet Information Services (IIS), Sun and Zeus, with Apache responsible for nearly 70% of all website delivery (Netcraft web server survey [http://news.netcraft.com/archives/web_server_survey.html]). IIS – claiming 20% of the market - is ideally suited for server-side scripting when using ASP (Active Server Pages) since both products originate from Microsoft. PHP also will happily run under IIS and is popular with developers because of the number of hooks it has for database development (for ecommerce and the like) using SQL Server, MySQL, Oracle among others. Yet either scripting language will run on a variety of servers since enabling products like Chili!Soft (in this instance for ASP) run under various operating systems.
Apart form selecting a hosting company with appropriate web servers, a developer may be expected to organise a domain name and ensure it points to the name servers (on which the site resides) so the DNS (Domain Name System) knows where to find the site on the millions of web servers on the World Wide Web.
Content Management System (CMS)
An increasing number of websites are being built with CMS back-ends supported by powerful relational databases. As mentioned above, these may serve (often huge) ecommerce retail outlets like Amazon with tens of thousands or millions of product lines or may populate a few specific pages of a small business site – with a variety of applications, delivery mechanisms and site sizes in between.
There are now hundreds of off-the-shelf CMS’ on the market, some centrally served (meaning the website must be hosted on the vendor’s server), others available for indiscriminate hosting, and many available as dedicated applications configurable by the end-developer to better approximate business needs. Each have their strengths and weaknesses and may range in price from a few hundred dollars to millions of pounds for a corporate installation and wide license.
The more configurable and better equipped CMS’ will incorporate a development language (or many) which permits functional extensibility but the price for such may be prohibitive to smaller website initiatives.
Static websites rarely employ server-side scripting like ASP unless it be to output a specific page – like for instance a mortgage application or other form requiring user input, validation and processing – but are based on hard-coded markup, HTML (HyperText Markup Language) or XHTML (eXtensible HTML) which may incorporate JavaScript client-side scripts – code which is interpreted by the browser.
Using ASP or similar server-side scripting to generate web pages on-the-fly at the server is regarded as a better solution than utilising client-side browser interpreted code such as JavaScript for feeding dynamic pages, especially when security or strict validation of user input is a prime requirement simply because JavaScript or similar local features are easily disabled by users, in many instances rendering a website or critical section unusable.
