A large web site has its own specific challenges. With many pages and users being used to keep the site running, there may be various workflows which are required to go from the paper design of a web site to its live performance. Workflow for detailed sites may involve different web servers and server locations. These servers all serve their own purposes.
Production Web Servers
Most web developers will be familiar with these servers. Production web servers host web pages and the content which is ready for display. In relatively smaller companies, developers create and test pages on their machines or on specific password hindered locations on the server. After development, the content is moved into a publicly accessible space in the server. This is done either through File Transfer Protocol (FTP), or by shifting files from hidden locations to accessible locations on the server.
A generic workflow for small to medium sized web developers is as follows:
- Content built locally
- Tested locally
- Uploaded into hidden directory on production server for beta testing
- On approval, moved into accessible server locations.
Testing Server/QA Server
These severs are solely for testing and they are not accessible to the public. Web sites can be tested in a safe environment and in simulated set up which emulated live conditions. There is generally a sort of control mechanism encoded into the server which records the performance of the pages being tested. There are useful for sites which contain massive amounts of programming, CGI based visuals or dynamic content. Testing servers are generally firewalled and only accessible to those developing the site but specific provisions can be made for password protected access beyond the firewall.
Typically, workflow for a testing server is as follows:
- Page built locally, tested locally
- Page changes loaded into testing servers
- Approved designs moved to live production web servers
Large websites such as e-Commerce web pages or web based applications utilize development servers for back-end programming on the content in the site. They have source code control methods which are accessible by multiple users and development servers also provide an environment for testing scripts and new programming. They differ from Testing Servers as the development of the page happens on the server itself instead of being made locally and then being transferred. Development servers help in making code being executed correctly thus allowing the developer to focus on specific performance instead of being concerned about the look of the site or page. Development server based workflow is usually as follows:
- Page developed on local machines, simultaneously code tested on development server
- All code and complete designs tested on testing server
- Approved pages moved to live production web servers.
The final step in the journey of a web page from production to execution, staging servers are designed to be as similar to production web servers as possible hence the components for staging and production web servers are often very similar. Most testing servers work well as staging servers but particularly detailed pages can be tested in isolation on staging servers without straining the testing server or negatively affecting the production web server. The average staging server is as follows:
- Page built locally and tested locally, content created on content servers, developers test and make code on development servers.
- Tested on testing server
- Content added to code on staging server
- Approved pages shifted to production web servers
There are other types of servers, such as Content Servers and the workflow of the web site production and development may differ with individual needs, but a working knowledge of servers and their enormous functionality is vital for survival in the web industry.
Darryl Stevens is the CEO at http://www.digitechwebdesignaustin.com, a premium web design firm specializing in web design with an emphasis on SEO and social media marketing. You can connect with Darryl Stevens on Google+