The Apache Project is a collaborative software development effort aimed at creating a robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server.
Originally designed as a replacement for the NCSA HTTP Server, Apache has grown to be one of the most popular web servers on the Internet. It’s extensible through a dynamically loadable module system and can process a large number of interpreted languages without connecting out to separate software.
Apache supports a variety of features, many implemented as compiled modules which extend the core functionality
Features include:
- Virtual hosting which allows one Apache installation to serve many different actual websites.
- Loadable Dynamic Modules.
- Multiple Request Processing modes (MPMs) including Event-based/Async, Threaded and Prefork.
- Highly scalable (easily handles more than 10,000 simultaneous connections).
- Configurable error messages.
- DBMS-based authentication databases.
- Content negotiation.
- Supported by several graphical user interfaces (GUIs) which permit easier configuration of the server. Many features implemented as compiled modules, ranging from server-side programming language support to authentication schemes.
- Common language interfaces support include mod_perl, mod_python, Tcl, and PHP.
- Popular authentication modules include mod_access, mod_auth, and mod_digest.
- SSL and TLS support (mod_ssl).
- Proxy module.
- Reverse proxy with caching:
- Load balancing with in-band health checks.
- Multiple load balancing mechanisms.
- Fault tolerance and Failover with automatic recovery.
- WebSocket, FastCGI, SCGI, AJP and uWSGI support with caching.
- Caching features to improve the performance:
- Three-state RFC2616 HTTP caching – mod_cache and its provider modules mod_cache_disk provide intelligent, HTTP-aware caching. The content itself is stored in the cache, and mod_cache aims to honor all of the various HTTP headers and options that control the cacheability of content.
- Two-state key/value shared object caching – the shared object cache API (socache) and its provider modules provide a server wide key/value based shared object cache. These modules are designed to cache low level data such as SSL sessions and authentication credentials. Backends allow the data to be stored server wide in shared memory, or datacenter wide in a cache such as memcache or distcache.
- Specialized file caching – mod_file_cache offers the ability to pre-load files into memory on server startup, and can improve access times and save file handles on files that are accessed often, as there is no need to go to disk on each request.
- URL rewriting (also known as a rewrite engine, implemented under mod_rewrite).
- IPv6-compatible.
- HTTP/2 support.
- Custom logging with rotation
- Concurrent connection limiting
- Request processing rate limiting
- Bandwidth throttling
- Server Side Includes.
- IP address-based geolocation.
- User and Session tracking.
- WebDAV – Web Distributed Authoring and Versioning is an extension of the Hypertext Transfer Protocol (HTTP) that allows clients to perform remote Web content authoring operations.
- Popular compression methods on Apache include the external extension module, mod_gzip, implemented to help with reduction of the size of web pages.
- Custom log files (mod_log_config).
- Filtering support (mod_include and mod_ext_filter).
- Handling of static files, index files, auto-indexing and content negotiation.
- XML support.
- Embedded Perl, PHP and Lua scripting.
- Real-time status views.
Website: httpd.apache.org
Support: Wiki, Documentation
Developer: Apache Software Foundation
License: Apache License 2.0
Apache is written in C. Learn C with our recommended free books and free tutorials.
Return to Web Servers | Return to Web Caches
Popular series | |
---|---|
The largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions. | |
Hundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information. | |
The Big List of Active Linux Distros is a large compilation of actively developed Linux distributions. | |
Replace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS. | |
Awesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series. | |
Machine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source. | |
New to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux. | |
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities. | |
Essential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users. | |
Linux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine. | |
Surveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal. | |
Saving Money with Linux looks at how you can reduce your energy bills running Linux. | |
Home computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum. | |
Now and Then examines how promising open source software fared over the years. It can be a bumpy ride. | |
Linux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged. | |
Linux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery. | |
Getting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers. | |
Best Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series. | |
These best free books accelerate your learning of every programming language. Learn a new language today! | |
These free tutorials offer the perfect tonic to our free programming books series. | |
Linux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts. | |
Stars and Stripes is an occasional series looking at the impact of Linux in the USA. |