The Apache HTTP cookbook provides the necessary resources to install and manage Apache HTTP Server
- RHEL 6.x
- RHEL 7.x
- Ubuntu Server 14.04 or greater
Apache HTTP Server 2.4
- Single installation with no configuration.
- Single installation with SSL and Proxy configuration
- Linux YUM Repository - An onsite linux YUM Repsoitory is required.
- Redhat
- Ubuntu
- ibm_cloud_utils
Attribute | Description | Default |
node['httpd']['conf_file_mode'] |
OS Permisssions of confguration files | 0640 |
node['httpd']['custom_log'] |
Name of the custom log, for the standard virtual host. | access_log |
node['httpd']['custom_log_format'] |
Directory of log to be configured in HTTP server | combined |
node['httpd']['data_dir_mode'] |
OS Permisssions of data folders | 0750 |
node['httpd']['directory_index'] |
Enable or Disable directory listing | index.html info.php |
node['httpd']['document_root'] |
File System Location of the Document Root |
|
node['httpd']['enable_MMAP'] |
HTTP Server enable_MMAP | off |
node['httpd']['enable_send_file'] |
HTTP Server enable_send_file | off |
node['httpd']['error_log'] |
Name of the error log, for the standard virtual host. | error_log |
node['httpd']['hostname_lookups'] |
HTTP Server hostname_lookups | Off |
node['httpd']['httpd_home'] |
Directory of the HTTP Server Process. |
|
node['httpd']['install_dir'] |
Directory where HTTP Server will be installed |
|
node['httpd']['keep_alive'] |
HTTP Server TCP Keep alive | Off |
node['httpd']['keep_alive_timeout'] |
HTTP Server keep_alive_timeout | 15 |
node['httpd']['listen'] |
Listening port to be configured in HTTP server | 80 |
node['httpd']['log_dir'] |
Directory where HTTP Server logs will be sent |
|
node['httpd']['log_level'] |
Log levels of the http process | warn |
node['httpd']['max_keep_alive_requests'] |
HTTP Server max_keep_alive_requests | 100 |
node['httpd']['os_users']['daemon']['comment'] |
HTTP Server daemon comment | HTTP Server daemon user |
node['httpd']['os_users']['daemon']['gid'] |
HTTP Server daemon gid | apache |
node['httpd']['os_users']['daemon']['home'] |
HTTP Server daemon home |
|
node['httpd']['os_users']['daemon']['ldap_user'] |
HTTP Server daemon ldap_user | false |
node['httpd']['os_users']['daemon']['name'] |
HTTP Server daemon name | apache |
node['httpd']['os_users']['daemon']['shell'] |
HTTP Server daemon shell | /sbin/nologin |
node['httpd']['os_users']['web_content_owner']['comment'] |
Comment, describing the User purpose | httpd daemon user |
node['httpd']['os_users']['web_content_owner']['gid'] |
Group ID of web content owner to be configured in HTTP server | apache |
node['httpd']['os_users']['web_content_owner']['home'] |
Home directory of web content owner to be configured in HTTP server | /home/webmaster |
node['httpd']['os_users']['web_content_owner']['ldap_user'] |
Use LDAP to authenticate Web Content Owner account on Linux HTTP server as well as web site logins | false |
node['httpd']['os_users']['web_content_owner']['name'] |
User ID of web content owner to be configured in HTTP server | webmaster |
node['httpd']['os_users']['web_content_owner']['shell'] |
Default shell configured on Linux server | /bin/bash |
node['httpd']['php_mod_enabled'] |
Enable PHP in Apache on Linux by Loading the Module | true |
node['httpd']['prefork_max_clients'] |
HTTP Server prefork_max_clients | 256 |
node['httpd']['prefork_max_requests_per_child'] |
HTTP Server prefork_max_requests_per_child | 4000 |
node['httpd']['prefork_max_spare_servers'] |
HTTP Server prefork_max_spare_servers | 20 |
node['httpd']['prefork_min_spare_servers'] |
HTTP Server prefork_min_spare_servers | 5 |
node['httpd']['prefork_server_limit'] |
HTTP Server prefork_server_limit | 256 |
node['httpd']['prefork_start_servers'] |
HTTP Server prefork_start_servers | 8 |
node['httpd']['proxy']['ProxyPreserveHost'] |
Instruct the reverse proxy to preserve original host header from the client browser | On |
node['httpd']['proxy']['rules']['ProxyPass']['path'] |
HTTP Server ProxyPass path | /sw/ |
node['httpd']['proxy']['rules']['ProxyPass']['url'] |
HTTP Server ProxyPass url | http://localhost |
node['httpd']['proxy']['rules']['ProxyPassReverse']['path'] |
HTTP Server ProxyPassReverse path | /sw/ |
node['httpd']['proxy']['rules']['ProxyPassReverse']['url'] |
HTTP Server ProxyPassReverse url | http://localhost |
node['httpd']['server_admin'] |
Email Address of the Webmaster | webmaster@localhost |
node['httpd']['server_name'] |
The Name of the HTTP Server, normally the FQDN of server. |
|
node['httpd']['server_root'] |
httpd server_root |
|
node['httpd']['service_name'] |
Name the HTTP Server process will run as |
|
node['httpd']['ssl']['https_port'] |
Secure Port for the HTTP Server | 443 |
node['httpd']['ssl']['install_mod_ssl'] |
Enable SSL within HTTP Server Configuration | true |
node['httpd']['ssl']['sslcompression'] |
Enable SSL compression within HTTP Server Configuration | Off |
node['httpd']['ssl']['sslproxycacertificatefile'] |
SSL proxy Certificate file name | PleaseProvide |
node['httpd']['ssl']['sslproxycacertificatepath'] |
SSL proxy Certificate file path | PleaseProvide |
node['httpd']['ssl']['sslproxycarevocationcheck'] |
SSL proxy CA revocation check | PleaseProvide |
node['httpd']['ssl']['sslproxycarevocationfile'] |
SSL proxy CA revocation file | PleaseProvide |
node['httpd']['timeout'] |
httpd timeout | off |
node['httpd']['use_canonical_name'] |
Should the HTTP Server use the canonical hostname | Off |
node['httpd']['version'] |
Version of HTTP Server to be installed. | 2.4 |
node['httpd']['vhosts_enabled'] |
Allow to configure virtual hosts to run multiple websites on the same HTTP server | true |
node['httpd']['virtualhosts']['default_http_server']['custom_log'] |
Location of the HTTP Server Custom Log |
|
node['httpd']['virtualhosts']['default_http_server']['custom_log_format'] |
Log Format of the Custom Log | combined |
node['httpd']['virtualhosts']['default_http_server']['document_root'] |
Location of the Default Docuement Root |
|
node['httpd']['virtualhosts']['default_http_server']['error_log'] |
Location of the HTTP Server Error Log |
|
node['httpd']['virtualhosts']['default_http_server']['global_ssl_config'] |
Use default global configuration for HTTP communication in HTTP server | true |
node['httpd']['virtualhosts']['default_http_server']['log_dir'] |
|
|
node['httpd']['virtualhosts']['default_http_server']['proxy_enabled'] |
Enable proxy usage for virtual host for HTTP Communication in HTTP server | false |
node['httpd']['virtualhosts']['default_http_server']['server_admin'] |
Email address of the Server Admin |
|
node['httpd']['virtualhosts']['default_http_server']['server_name'] |
Vhost server name for directing requests |
|
node['httpd']['virtualhosts']['default_http_server']['ssl_enabled'] |
Enable SSL for virtual host for HTTPS communication in HTTP server | false |
node['httpd']['virtualhosts']['default_http_server']['vhost_listen'] |
Listening port configured in virtual host for HTTP communication in HTTP server | 80 |
node['httpd']['virtualhosts']['default_http_server']['vhost_type'] |
Allow to configure virtual hosts to run multiple websites on the same HTTP server | name_based |
node['httpd']['virtualhosts']['default_https_server']['custom_log'] |
HTTPS Virtual host custom log dir |
|
node['httpd']['virtualhosts']['default_https_server']['custom_log_format'] |
HTTPS Virtual host custom log format | combined |
node['httpd']['virtualhosts']['default_https_server']['document_root'] |
HTTPS virtual host document root |
|
node['httpd']['virtualhosts']['default_https_server']['error_log'] |
HTTPS Virtual host error log dir |
|
node['httpd']['virtualhosts']['default_https_server']['global_ssl_config'] |
Use default global configuration for HTTPS communication in HTTP server | true |
node['httpd']['virtualhosts']['default_https_server']['log_dir'] |
HTTPS virtual host log dir |
|
node['httpd']['virtualhosts']['default_https_server']['proxy_enabled'] |
Enable proxy configuration | true |
node['httpd']['virtualhosts']['default_https_server']['server_admin'] |
HTTPS Virtual host server admin |
|
node['httpd']['virtualhosts']['default_https_server']['server_name'] |
HTTPS Virtual host server name for directing requests |
|
node['httpd']['virtualhosts']['default_https_server']['ssl_enabled'] |
HTTPS - Enable SSL for virtual host for HTTP communication in HTTP server | true |
node['httpd']['virtualhosts']['default_https_server']['vhost_listen'] |
Listening port configured in virtual host for HTTPS communication in HTTP server | 443 |
node['httpd']['virtualhosts']['default_https_server']['vhost_type'] |
Specify type of virtual host for HTTPS communication in HTTPS server | name_based |
node['httpd']['worker_max_clients'] |
HTTP Server worker_max_clients | 25 |
node['httpd']['worker_max_requests_per_child'] |
HTTP Server worker_max_requests_per_child | 0 |
node['httpd']['worker_max_spare_servers'] |
HTTP Server worker_max_spare_servers | 25 |
node['httpd']['worker_min_spare_servers'] |
HTTP Server worker_min_spare_servers | 300 |
node['httpd']['worker_server_limit'] |
HTTP Server worker_server_limit | 75 |
node['httpd']['worker_start_servers'] |
HTTP Server worker_start_servers | 4 |
Cleanup recipe (cleanup.rb) Perform post-install cleanup
Configure httpd server recipe (config_httpd_conf.rb) Setup the main server configuration file
SSL configuration recipe (config_proxy.rb) Install mod_ssl, create SSL configuration file, create certificates
vhost configuration recipe (config_vhost.rb) Create vhost configuration file
Default recipe (default.rb) The default recipe for the cookbook. It is recommended to not use the default recipe, but explicitly specify a run_list for the deployment node.
Gather evidence recipe (gather_evidence.rb) Gather evidence that installation was successful
Installation recipe (install.rb) Perform an installation of selected httpd package on the target node.
Prerequisites recipe (prereq.rb) Perform prerequisite tasks.
Service control recipe (service.rb) Enable and start the httpd service
Author:: IBM Corp (<>)
Copyright:: 2018, IBM Corp
License:: Copyright IBM Corp. 2016, 2018