What is Apache Hosting?
“The goal of [the Apache] project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.” – Apache Foundation
The Apache HTTP web server hardly needs an introduction. This highly configurable server platform is free and since it is open source, Apache it can be customized in a number of different ways.
Apache also features a library full of add-ons that provide support for additional features.
If you can’t find quite what you need or want, you can alter it to your specifications. Tweaks can be shared among members of the Apache development community, which is a good place to start in case you need some custom features.
Servers, via Pixabay
What is Apache?
In short, Apache is server software. People looking for Apache hosting will most likely already know what this means. But for those of you who don’t, here’s a quick run-down.
Web Servers vs Web Server Applications
An Apache web server is not the physical infrastructural machine that sits in a data center. Instead, it’s actually a web server application that is installed on these computers.
This web server application is what allows the server to deliver content via the internet. The server software is installed on an operating system, most commonly Linux.
Development and Maintenance
This software is developed and maintained by an open-source community of developers. Developers can install the Apache web server onto a computer to host websites themselves.
Since the software is open source, it’s completely free for anyone to install. This lets developers host websites for free instead of paying a hosting company to do it for them.
What is Apache Tomcat?
Apache Tomcat is an open-source Java Servlet Container developed by the Apache Software Foundation. A Java servlet allows people to extend the capabilities of a server such by deploying web applications.
Written in Java, Apache Tomcat provides a pure Java web server environment for Java code to run in. It also includes tools that allow for configuration and management. People can also configure Apache Tomcat directly by editing XML configuration files.
How Does Apache Work?
All websites must be hosted on a web server. One of these servers and the most widely-used is Apache. When you browse the internet online, you open web pages.
When you navigate to a web page, a web server is acting behind the scenes to find the page you have requested. It delivers the files that make up the web page to you, so you can view and interact with it.
HTTP Delivery System
Web servers deliver web pages using HTTP (HyperText Transfer Protocol) through requests for URLs (Universal Resource Locators). As you probably know, a URL is the ID of the web page that you want to access.
When a user inputs a URL into the address bar of a web browser, their browser sends an HTTP request to the server computer that is running Apache.
Company vs Self Hosted Sites
If the website is hosted by a web hosting company, this request will be sent to a server computer in a data center.
If a website is self-hosted on a developer’s computer, the request will be sent there. The Apache server then handles the HTTP request, following HTTP protocol to deliver the requested web page.
Handling Multiple Requests
Apache servers have to handle many HTTP requests at the same time. As a result, the Apache server will create a new thread, or a branch off of the program, to run each new HTTP request.
This is what allows multiple users to access a web page at the same time. This is possible because of Apache’s multi-processing modules.
Many other Apache modules can be installed on the Apache web server. These modules can be available from third-parties or from developers working under Apache as well. A list of all the modules available for download can be found on Wikipedia.
These different modules have a variety of functions, such as acting as authentication providers or applying bandwidth limits to users.
What Makes Apache So Popular?
Community support for Apache remains strong, despite the advent of numerous competing solutions. Although Apache runs on Windows, Mac, Unix and Linux-based servers, it is usually associated with Linux.
Apache supports a variety of technologies, including:
- Common Gateway Interface (CGI)
- Server Side Includes (SSI)
- URL redirection
- HTTP header metafiles
- Proxy caching
The cross-platform compatibility means that no matter what operating system the server computer is running, Apache can still host your website with ease.
Apache servers typically run more smoothly and more securely in comparison to other servers, so if security is a concern, Apache is a safe bet under many circumstances.
Many shared hosting plans offer Apache servers, as do many dedicated server plans, because it is a more cost-effective option compared to Microsoft Internet Information Services (IIS).
Because of its flexibility and affordability, it is the most popular web server software available today.
Apache vs Other Web Servers
However, in recent years Apache has lost ground to IIS and open-source competitors like Nginx. A few years ago Apache ran more than 60% of all web servers, but in early 2014 the share dropped to 42%.
While Apache still has a lot going for it, critics claim it has become bloated over the years, offering numerous advanced features that a lot of users simply do not find necessary.
Apache’s process-based nature also means it creates a lot of thread overhead, as every simultaneous connection requires a separate thread. Some users find IIS more appealing thanks to its unparalleled .NET support.
How to Get Apache
On a budget? The LAMP stack is a great option.
Anyone can get Apache as a standalone package or as part of an inclusive program with modules. Many people get Apache as part of a LAMP stack, which is a suite of applications necessary for hosting.
What Is LAMP?
LAMP stands for Linux, Apache, MySQL, and PHP. The LAMP stack effectively provides an operating system, a server, a database, and a scripting language.
People looking to install Apache on their computer can get it from the Apache website. But many people prefer to install it with a LAMP stack. Using Ubuntu as the Linux operating system, people can install Apache easily from their command line using the apt-get install command.
What is a Virtual Host?
The Apache server has the ability to serve multiple domains at the same time. This is called virtual hosting. This is how hosting companies can offer shared server hosting solutions and give you multiple domains with your plans.
Virtual hosting is what allows a single server to share its resources with multiple users. This makes it easy for companies to offer shared hosting at a low price.
This makes hosting extremely affordable to small businesses and individuals who can’t afford the price of a full dedicated server. Especially since these users don’t even need all the resources of a dedicated server.
Apache Virtual Hosting
There are two types of configurations for Apache virtual hosting. One is IP-based, and the other is name-based. An IP-based virtual host configuration uses a separate server IP address for each website on the server.
A name-based configuration uses the hostname in the HTTP header to find the requested website. This way, the server only needs to have one IP address and point multiple websites to this one IP.
IP-Base Virtual Hosting
Though, when hosted websites share an IP address, people can run into SSL problems. When you share an IP address with other users on your server, you also share the SSL certificate.
This can result in warnings still showing up to website visitors when they go to enter payment information on your website.
This is why many hosting companies offer IP-based virtual hosting for an additional price. This gives you your own IP address that you can place a private SSL certificate on.
Downsides of IP-Based Virtual Hosting
The downside of IP-based virtual hosting is that it increases overhead costs for companies. This is why dedicated IP’s are often included in higher-priced plans or offered as add-ons.
|Name-Based Virtual Host||IP-Based Virtual Host|
|Identifier||Multiple hostnames (each referring to a specific website) used to point to a single IP address||One dedicated IP address per website|
|Security||Difficult to secure websites running SSL/TLS due to technical configuration of name-based virtual hosting|
|Stability||Requires consistently-available Domain Name System to be usable||Unique IP addresses reduces the likelihood of confusion over which specific website the user requested|
|Ease of Maintenance||High||Medium – multiple IP addresses requires increased administrative costs|
Endless Choice of Apache Hosting Options
Since Apache can run on virtually any platform, it can be deployed on numerous versions and custom variations, on practically any hardware platform on the market.
However, not all companies offering Apache hosting are created equally, as pricing may vary significantly from one host to another. Luckily, with so much choice, it is easy to shop around, compare features and pricing before you decide what will work best for your project.
Save on Hosting Fees by Choosing Apache
Apache hosting plans tend to be somewhat cheaper than comparable Windows plans. Bear in mind that Apache is free, so most hosts pair it with free operating systems like Linux. The combination is known as LAMP, which stands for Linux Apache MySQL PHP.
On the other hand, Windows hosting requires IIS, Microsoft SQL or ODBC and of course a Microsoft operating system. Hardware requirements may differ, too.
Most of the savings are transferred to the customer, making lean and frugal Apache hosting plans popular among small businesses and individual users.
Three Most Common Apache Hosting Plan Tiers
Although there is no industry standard and there are a range of different options, the most common plans and price tiers are shared Apache plans, virtual private server (VPS) plans, and managed private server (MPS) plans.
The most affordable options are usually shared Apache plans, including cloud-based plans. They tend to offer basic functionality, including:
More expensive and comprehensive VPS (Virtual Private Server) plans are designed for multi-site hosting and medium load sites.
They usually include dedicated hardware, usually using a virtual private server model, multiple domain hosting, more storage and other features.
Top end Apache managed private servers are designed with more demanding clients in mind. They can handle a number of websites or high load sites. Virtualisation is usually supported, many hosts now offer e-commerce functionality as well, along with more advanced features for niche users.
Needless to say, dedicated servers tend to end up pricey regardless of platform and in most cases, the price gap between LAMP and Windows/IIS packages tends to be bigger on entry-level plans.
My Choices: The Top Three Apache Hosts
These three hosting companies all have some very cheap Apache server hosting.
To start, GreenGeeks’ Apache-based web hosting services are optimized for Apache hosting. They regularly update their Apache server to ensure that your websites are fast and secure.
With their shared plans, you’ll get access to custom Apache modules as well as custom PHP and PHP optimizations. GreenGeeks hosts their plans on speedy SSD servers which they provide unlimited storage on. You also get free daily backups with their services and a free domain name when you sign up.
A2 Hosting doesn’t include a free domain name. But, they provide Turbo Servers to boost your hosting speeds by 20x. These Turbo servers provide more resources for each user because they keep fewer users on them. This will also give users enhanced performance over Apache.
With A2, customers get unlimited resources even with their very cheapest hosting plan. And for just a small price extra per month, they can host unlimited domains.
Like GreenGeeks, SiteGround gives you free domain registration when you sign up. Though their shared hosting plans are similar in price to these other two companies, they put limits on your website storage space.
But people choosing to host with SiteGround will enjoy a free CDN and free daily backups. SiteGround also provides custom Apache modules with advanced PHP optimizations.
Pros and Cons of Apache
Like any software product, Apache has its good and bad points. Below, I’ve highlighted the major pros and cons of Apache.
- Apache web server is completely free because it is open-source software
- The server’s open-source nature also means there’s a developer community behind it producing frequent updates
- Developers can modify and customize the source code to suit their needs
- Virtual hosting allows you to run multiple websites from one server
- The Apache installation package includes DNS, SMTP, and FTP.
- Numerous third-party modules allow you to customize your web server
- Compatible with many different operating systems and configurations of hardware.
- The ability to modify the server’s configuration adds a threat to the server’s security
- Modifying the source code will lead to bugs
- Apache must be updated regularly
- Apache may struggle under high traffic situations where NGINX may perform better.
There are a number of reasons why Apache is the most popular web server in the world. And it’s popularity provides you with a lot of advantages like having a lot of people you can turn do should you run into problems.
The main alternative to it is Nginx, which is generally thought to use less memory and run faster. Many web hosting companies offer both servers as options. In general, you can’t go wrong with either.
Other features in Web Servers
Apache Frequently Asked Questions
- What is Apache?
Apache is the most popular web server software in the world. It was first developed in 1995. Today, Apache serves over half of all of the websites in existence.
- Who owns Apache?
The Apache software is owned by the Apache Software Foundation, an American non-profit corporation. It’s maintained by the members of the foundation, a group of developers. To join the Apache Software Foundation, a developer must have a history of actively contributing to one of the foundation’s projects and be nominated by a current member and voted in by a majority.
- Is Apache free?
Yes. Apache is distributed as free and open-source software. The Apache Software Foundation’s bylaws specifically state that Apache projects are to be distributed free of charge.
- What operating systems can Apache be run on?
Apache is most commonly used on Linux servers, but the software is also available for a variety of operating systems including Microsoft Windows and Mac OS X.
- Which web hosting companies use Apache servers?
Most web hosting plans that are Linux-based will run Apache servers, though Apache may not be specifically mentioned. You may want to double-check with your hosting company before purchasing a plan if you require Apache.
For VPS or dedicated server hosting, depending on the web hosting company and the plan you purchase, you may be able to install Apache on your server yourself, or request it to be installed for you.
- Why is Apache still the most common web server software?
Despite other newer web server software applications, Apache remains the most popular on the web. It’s a time-tested, vetted, secure system that’s well-known and well-understood by many developers, making it the most common first choice for server configurations.
- How does Apache compare to Nginx?
Nginx is what is called an asynchronous server, while Apache is a process-based server. There are many differences in exactly how Apache and Nginx handle connections, interpret requests, extend via modules, and so on.
Community support for Apache is more plentiful because the software has been in existence for many years.
- How does Apache compare to Lighttpd?
Lighttpd (pronounced “lighty”) is a free and open-source asynchronous server that runs as a single process with a single thread, similar to Nginx. Lighttpd was first released in 2003, and like Nginx, tends to have have less community support than Apache.
- What is a process-based server, and how does it compare to asynchronous?
Process-based serving is a more traditional technology. With a process-based server, a new thread must be created to handle each HTTP request. Under heavy loads, this system can use a lot of RAM, and result in slower performance.
With the newer asynchronous servers (also called event-based or asynchronous I/O), multiple HTTP requests can be handled within one thread, which uses less RAM and may process heavier loads more efficiently.
The Apache Software Foundation notes that performance benchmarks tend to be a measure of configuration rather than the underlying quality of the server.
- What kinds of modules are available for Apache?
There are many modules available to extend Apache’s functionality. Modules can be added to provide CGI ability, add options for user authentication, generate automatic directory listings, set bandwidth limits, stream flash video, enable specific programming languages, and much more.
- Can I host my own website on my home computer using Apache?
Yes, it is possible to host your own website at home using Apache software. However, running your own server at home can be a time-consuming task, and unless you’re an expert, it can open up your website and entire computer to various security issues.
If your goal is to save money on hosting, it’s better to go with a low-cost web hosting company than to run your own server at home. For one thing, ISPs usually don’t allow you to run public servers using residential connections.
- What’s the difference between Apache HTTP Server and Apache Tomcat?
Apache HTTP Server is written in C and, as its name suggests, is a general-purpose HTTP server. Tomcat is written in Java, and its main purpose is to host servlets and JSPs. Tomcat can serve as an HTTP server for static content, but Apache HTTP Server offers many advanced options that Tomcat does not.
- Where is Apache support available?
The Apache Software Foundation maintains extensive documentation on Apache on its official website. Third party companies provide commercial support for Apache, but the foundation doesn’t maintain a list of them or endorse any particular companies.