Web servers are specialized computers with additional resources and a web server software that deliver the web pages and the related content to users when they request by typing a URL in the browser address bar. For example, if a user enters the URL – “http://www.csveda.com/webservers.html” in the browser, it generates a server request to the Web server having domain name “csveda.com”. The web server fetches the page webservers.html and sends it to the user’s browser.
If a user wants to create a website or a web application for other people who could access the site through internet or intranet, she has to host it in a web server. Web hosting is all about purchasing the web server storage space, domain name and storing the web pages in the server.
There is a number of web server software that can be installed on the web server machines (hardware). Commonly used web server software are Apache, IIS and lighttpd, Sun Java System Web Server and Jigsaw. A web server is also responsible for implementing the essential security checks on HTTP requests generated by the users before bringing up the web page on the browser. If the requested webpage needs some additional modules or script processing the server does that and generates the final HTML document.
Depending upon from where a user is accessing the web pages from web servers can be categorized as local server and remote server
Local Web Servers
As the name suggests a local server is a privately owned machine most commonly used by developers to store and test the web pages that have server side scripting codes. In other words when a developer installs web server software on his current machine and uses it for developing web applications, the machine will be called a local web server. A local server can be your laptop or Personal Computer giving you the complete environment (software & hardware) for developing a web application.
Remote Web Servers
Opposite to the local server, remote server refers to a computer that is remotely located having a web server software, database and other resources to handle remote requests sent by the users of a website. A remote server may host single or multiple websites. It has to be powered to process the scripting language codes in the web pages. Usually the remote servers are high performance computers having large memory and storage space to handle multiple page requests of the users. The remote web server responds to the user requests by transferring the pages requested over the internet connectivity.
Difference between Local Server and a Remote Server
|A local machine with no network connectivity having a web server software||A remote computer with web server software, database and other resources|
|Virtually no expenses are needed to set up and maintain||Expensive due to high performance needs|
|Needs no network connectivity||Needs networks and communication connectivity|
|Usually setup for development and testing of web sites having server side scripting||May host multiple websites of different clients|
|Web pages and other files can be simply copied in the local web server root directory.||A user needs a special FTP(File Transfer Protocol) software like FileZilla, CuteFTP or gFTP to upload or download files to/ from the remote web server|
|Does not need any extensive security mechanism being available on an individual computer||A remote web server must implement extensive security mechanism to protect the data being transmitted and shared by the users.|
|Owned and maintained by an individual||Ownership usually lies with a company and requires a team of experts to maintain a remote web server.|