The term web server can refer to hardware or software, or both of them working together.
- On the software side, a web server includes several parts that control how web users access hosted files. At a minimum, this is an HTTP server. An HTTP server is software that understands URLs (web addresses) and HTTP (the protocol your browser uses to view webpages). An HTTP server can be accessed through the domain names of the websites it stores, and it delivers the content of these hosted websites to the end user’s device.
At the most basic level, whenever a browser needs a file that is hosted on a web server, the browser requests the file via HTTP. When the request reaches the correct (hardware) web server, the (software) HTTP server accepts the request, finds the requested document, and sends it back to the browser, also through HTTP. (If the server doesn’t find the requested document, it returns a 404 response instead.)
To publish a website, you need either a static or a dynamic web server.
A static web server, or stack, consists of a computer (hardware) with an HTTP server (software). We call it “static” because the server sends its hosted files as-is to your browser.
A dynamic web server consists of a static web server plus extra software, most commonly an application server and a database. We call it “dynamic” because the application server updates the hosted files before sending content to your browser via the HTTP server.
For example, to produce the final webpages you see in the browser, the application server might fill an HTML template with content from a database. Sites like MDN or Wikipedia have thousands of webpages. Typically, these kinds of sites are composed of only a few HTML templates and a giant database, rather than thousands of static HTML documents. This setup makes it easier to maintain and deliver the content.
TYPES OF WEB SERVERS
Every Website sits on a computer known as a Web server. This server is always connected to the internet. Every Web server that is connected to the Internet is given a unique address made up of a series of four numbers between 0 and 255 separated by periods. For example, 126.96.36.199 or 188.8.131.52.
When you register a web address, also known as a domain name, such as tutorialspoint.com you have to specify the IP address of the Web server that will host the site. You can load up with Dedicated Servers that can support your web-based operations.
There are four leading web servers − Apache, IIS, lighttpd and Jagsaw. Now we will see these servers in bit more detail.
Apart from these Web Servers, there are other Web Servers also available in the market but they are very expensive. Major ones are Netscape’s iPlanet, Bea’s Web Logic and IBM’s WebSphere.
Apache HTTP Server
This is the most popular web server in the world developed by the Apache Software Foundation. Apache web server is an open source software and can be installed on almost all operating systems including Linux, Unix, Windows, FreeBSD, Mac OS X and more. About 60% of the web server machines run the Apache Web Server.
You can have Apache with topcat module to have JSP and J2EE related support.
You can have detailed information about this server at Apache Http server
Internet Information Services
The Internet Information Server (IIS) is a high performance Web Server from Microsoft. This web server runs on Windows NT/2000 and 2003 platforms ( and may be on upcoming new Windows version also). IIS comes bundled with Windows NT/2000 and 2003; Because IIS is tightly integrated with the operating system so it is relatively easy to administer it.
You can have detailed information about this server at Microsoft IIS
The lighttpd, pronounced lighty is also a free web server that is distributed with the FreeBSD operating system. This open source web server is fast, secure and consumes much less CPU power. Lighttpd can also run on Windows, Mac OS X, Linux and Solaris operating systems.
You can have detailed information about this server at lightttpd
Sun Java System Web Server
This web server from Sun Microsystems is suited for medium and large websites. Though the server is free it is not open source. It however, runs on Windows, Linux and Unix platforms. The Sun Java System web server supports various languages, scripts and technologies required for Web 2.0 such as JSP, Java Servlets, PHP, Perl, Python, Ruby on Rails, ASP and Coldfusion etc.
You can have detailed information about this server at Sun java system web server
Jigsaw (W3C’s Server) comes from the World Wide Web Consortium. It is open source and free and can run on various platforms like Linux, Unix, Windows, Mac OS X Free BSD etc. Jigsaw has been written in Java and can run CGI scripts and PHP programs.
File servers store and distribute files. Multiple clients or users may share files stored on a server. In addition, centrally storing files offers easier backup or fault tolerance solutions than attempting to provide security and integrity for files on every device in an organization. File server hardware can be designed to maximize read and write speeds to improve performance.
Print servers allow for the management and distribution of printing functionality. Rather than attaching a printer to every workstation, a single print server can respond to printing requests from numerous clients. Today, some larger and higher-end printers come with their own built-in print server, which removes the need for an additional computer-based print server. This internal print server also functions by responding to print requests from a client.
Application servers run applications in lieu of client computers running applications locally. Application servers often run resource-intensive applications that are shared by a large number of users. Doing so removes the need for each client to have sufficient resources to run the applications. It also removes the need to install and maintain software on many machines as opposed to only one.
Domain Name System (DNS) servers are application servers that provide name resolution to client computers by converting names easily understood by humans into machine-readable IP addresses. The DNS system is a widely distributed database of names and other DNS servers, each of which can be used to request an otherwise unknown computer name. When a client needs the address of a system, it sends a DNS request with the name of the desired resource to a DNS server. The DNS server responds with the necessary IP address from its table of names.
Mail servers are a very common type of application server. Mail servers receive emails sent to a user and store them until requested by a client on behalf of said user. Having an email server allows for a single machine to be properly configured and attached to the network at all times. It is then ready to send and receive messages rather than requiring every client machine to have its own email subsystem continuously running.
One of the most abundant types of servers in today’s market is a web server. A web server is a special kind of application server that hosts programs and data requested by users across the Internet or an intranet. Web servers respond to requests from browsers running on client computers for web pages, or other web-based services. Common web servers include Apache web servers, Microsoft Internet Information Services (IIS) servers and Nginx servers.
The amount of data used by companies, users, and other services is staggering. Much of that data is stored in databases. Databases need to be accessible to multiple clients at any given time and can require extraordinary amounts of disk space. Both of these needs lend themselves well to locating such databases on servers. Database servers run database applications and respond to numerous requests from clients. Common database server applications include Oracle, Microsoft SQL Server, DB2, and Informix.
Virtual servers are taking the server world by storm. Unlike traditional servers that are installed as an operating system on machine hardware, virtual servers exist only as defined within specialized software called hypervisor. Each hypervisor can run hundreds, or even thousands, of virtual servers all at once. The hypervisor presents virtual hardware to the server as if it were real physical hardware. The virtual server uses the virtual hardware as usual, and the hypervisor passes the actual computation and storage needs onto the real hardware beneath, which is shared among all the other virtual servers.
A proxy server acts as an intermediary between a client and a server. Often used to isolate either the clients or servers for security purposes, a proxy server takes the request from the client. Instead of responding to the client, it passes the request on to another server or process. The proxy server receives the response from the second server and then replies to the original client as if it were replying on its own. In this way, neither the client nor the responding server needs to directly connect to each other.
Monitoring and management servers
Some servers exist to monitor or manage other systems and clients. There are many types of monitoring servers. Several of them listen to the network and receive every client request and server response, but some do not request or respond to data themselves. In this way, the monitoring server can keep track of all the traffic on the network, as well as the requests and replies of clients and servers, without interfering with those operations. A monitoring server will respond to requests from monitoring clients such as those run by network administrators watching the health of the network.
Features of a Web Server
A web server is a programme that is operated by receiving http request from client and sends relevant document as http response to client. The best part about a web server that it is not designed just to support static contents like files but also to support dynamic content by interfaces like ASP, JSP, ASP.Net, etc. Here are some major web server features that must be looked apart from just knowing that what is web server, these are also important enough to look out before purchasing-
- Bandwidth Limits- Bandwidth is the amount of data a website can transfer over a period of time. In simple words or in a layman language, bandwidth is the amount of data that you will be allowed to download or upload. Some web servers might promise you with unlimited bandwidth but that would be just to attract you initially. Bandwidth requires management or else will limit your traffic speed that would further affect your performance.
- Storage Amount The first and foremost that pops up while selecting a web server would be its storage capacity. It is the total amount of space on a server where you can store website files. The storage capacity is directly determined by the disk space that is essential to store databases, files and other media. You can select your webs server depending on the scale of your website. Web server dealing in few gigabytes would be more than enough for a small to medium scale website.
- Any ADD-ON Domain ADD-ON domains are used when there is a need to host several domains from a single hosting account. There are multiple website that find difficulty as they have to manage so many domains all together. Hence, it is advisory to check with your web server provider that they have the provision of ADD-ON domains.
- Uptime Uptime is that time that tracks the time for which the web server was functional that is measured in percentage. Before buying it would be best to check the actual rate by some available online third-party tools. According to the Standard Industry Norms, 99% is the standard uptime.
- Reliability The web server you are going to put your money and trust for like 2-3 years or more should be reliable enough. An ideal web server can prove to be reliable by providing 24/7 customer assistance. You can ensure the reliability of your web servers by going through past reviews.
- Pre-Installed Apps Pre-installed apps are important as there are so many requirements of a website that needs to be fulfilled and is not a single handed task. They improve efficiency and enable your website to handle most of the complex tasks.
- Programming Language It is equally important as the other features to check the programming language that your web server is based on. Every website or business owner has their set of preferences. Always try to explore with the options apart from those conventional programming languages i.e. PHP, PYTHON, etc.
- Backup A website needs backup at regular intervals of its files and the databases. Significant data losses that is very frequent these days. Hence, looking out for a good regular backup feature in your web server can save you from many adverse situations.
Functions of webserver:
1. Stores and secures website data:
In web hosting services, a web server stores all website data and secures it from unauthorized users when it is properly configured.
2. Provides web database access:
A web server’s responsibility is to provide access to websites that are hosted. Web hosting service providers own some web servers that are used in variable ways to provide different web hosting services, such as backend database servers.
3. Serve the end user requests:
Web servers accept requests from different users connected over the internet and serve them accordingly.
4. Bandwidth controlling to regulate network traffic:
It is a feature available in web server to minimize excess network traffic. Web Hosts can set bandwidth values to regulate the rate of data transmission over the internet. This feature avoids the down time caused by high web traffic.
5. Virtual hosting:
Virtual Hosting is a type of web hosting service in which a web server is used to host other software based virtual web-servers web sites, data, applications and other services. Virtualized Web servers do possess this feature to provide virtual hosting.
6. Server side web scripting:
This feature of web server enables the user to create dynamic web pages. The popular server side scripting languages include Perl, Ruby, Python, PHPandASP etc
BENEFITS OF A WEB SERVER
Here are some advantages of using a web server within your development environment:
- Your local website behaves more like the live one. For example, you can configure directory security, test your custom error pages etc before commiting them to the production environment.
- You can use server-side scripting languages such as PHP and ColdFusion.
- Allows you to standardize your coding. For example, you can use root-relative paths for your image references and hyperlinks (eg, /directory/image.gif). In other words, your paths can represent the website structure, rather than the directory structure of your computer.
- Knowledge. The knowledge you gain from using your own web server will help you understand how it works in the live environment. This will most certainly help you when you need to communicate with your hosting provider – you’ll be able to use terminology that makes it easier for them to understand your request/issue.
Drop your comment