Development repository for the apache2 cookbook
Alternatives To Apache2
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
16 days ago3apache-2.0Ruby
Development repository for the nginx cookbook
a month ago3other
Code snippets for ROS2
17 days ago7apache-2.0Ruby
Development repository for the apache2 cookbook
16 days ago13apache-2.0Ruby
Development repository for the mariadb cookbook
a month ago3Shell
Chromebook Developer Tool
Cookbook Gdebi34
6 years ago3otherRuby
Simple cookbook that wraps gdebi
Azure Pipelines Agent Cookbook32
2 years agomitRuby
Chef Cookbook to install and manage Azure Pipelines Agent for Build and Release tasks
Chef Ruby_install26
6 years ago5Ruby
Chef cookbook for installing ruby-install.
4 months ago5apache-2.0Ruby
Development repository for the snort cookbook
4 months ago5otherRuby
Development repository for the network_interfaces cookbook
Alternatives To Apache2
Select To Compare

Alternative Project Comparisons

apache2 Cookbook

Cookbook Version CI State OpenCollective OpenCollective License

This cookbook provides a complete Debian/Ubuntu style Apache HTTPD configuration. Non-Debian based distributions such as Red Hat/CentOS, ArchLinux and others supported by this cookbook will have a configuration that mimics Debian/Ubuntu style as it is easier to manage with Chef.

Debian-style Apache configuration uses scripts to manage modules and sites (vhosts). The scripts are:

  • a2ensite
  • a2dissite
  • a2enmod
  • a2dismod
  • a2enconf
  • a2disconf

This cookbook ships with templates of these scripts for non-Debian based platforms.


This cookbook is maintained by the Sous Chefs. The Sous Chefs are a community of Chef cookbook maintainers working together to maintain important cookbooks. If youd like to know more please visit sous-chefs.org or come chat with us on the Chef Community Slack in #sous-chefs.


Depending on your OS configuration and security policy, you may need additional recipes or cookbooks for this cookbook's recipes to converge on the node. In particular, the following Operating System settings may affect the behavior of this cookbook:

  • SELinux enabled
  • Firewalls (such as iptables, ufw, etc.)
  • Compile tools
  • 3rd party repositories

On RHEL, SELinux is enabled by default. The selinux cookbook contains a permissive recipe that can be used to set SELinux to "Permissive" state. Otherwise, additional recipes need to be created by the user to address SELinux permissions.

To deal with firewalls Chef Software does provide an iptables and ufw cookbook but is migrating from the approach used there to a more robust solution utilizing the general firewall cookbook to setup rules. See those cookbooks' READMEs for documentation.

On ArchLinux, if you are using the apache2::mod_auth_openid recipe, you also need the pacman cookbook for the pacman_aur LWRP. Put recipe[pacman] on the node's expanded run list (on the node or in a role). This is not an explicit dependency because it is only required for this single recipe and platform; the pacman default recipe performs pacman -Sy to keep pacman's package cache updated.


The following platforms and versions are tested and supported using test-kitchen

  • Amazon Linux 2023
  • CentOS 7+ (incl. Rocky & Alma)
  • Debian 10+
  • Fedora latest
  • OpenSUSE Leap 15
  • Ubuntu 18.04+


It is recommended to create a project or organization specific wrapper cookbook and add the desired custom resources to the run list of a node. Depending on your environment, you may have multiple roles that use different recipes from this cookbook. Adjust any attributes as desired.

apache2_install 'default_install' do
  notifies :restart, 'apache2_service[default]'

apache2_module 'headers' do
  notifies :reload, 'apache2_service[default]'

apache2_module 'ssl' do
  notifies :reload, 'apache2_service[default]'

apache2_default_site 'foo' do
  default_site_name 'my_site'
  template_cookbook 'my_cookbook'
  port '443'
  template_source 'my_site.conf.erb'
  action :enable
  notifies :reload, 'apache2_service[default]'

apache2_service 'default' do
  action [:enable, :start]

Example wrapper cookbooks: basic site ssl site



This project exists thanks to all the people who contribute.


Thank you to all our backers!



Support this project by becoming a sponsor. Your logo will show up here with a link to your website.

https://opencollective.com/sous-chefs/sponsor/0/website https://opencollective.com/sous-chefs/sponsor/1/website https://opencollective.com/sous-chefs/sponsor/2/website https://opencollective.com/sous-chefs/sponsor/3/website https://opencollective.com/sous-chefs/sponsor/4/website https://opencollective.com/sous-chefs/sponsor/5/website https://opencollective.com/sous-chefs/sponsor/6/website https://opencollective.com/sous-chefs/sponsor/7/website https://opencollective.com/sous-chefs/sponsor/8/website https://opencollective.com/sous-chefs/sponsor/9/website

Popular Cookbook Projects
Popular Debian Projects
Popular Learning Resources Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Chef Cookbook
Chef Resource