/#
/# This is the main Apache HTTP server /configuration file. It contains the
/# configuration directives that give the server its instructions.
/# See URL:http://httpd.apache.org/docs/2.4/ for detailed information.
/# In particular, see
/# URL:http://httpd.apache.org/docs/2.4/mod/directives.html
/# for a discussion of each configuration directive.
/#
/# See the httpd.conf(5) man page for more information on this configuration,
/# and httpd.service(8) on using and configuring the httpd service.
/#
/# Do NOT simply read the instructions in here without understanding
/# what they do. Theyâre here only as hints or reminders. If you are unsure
/# consult the online docs. You have been warned.
/#
/# Configuration and logfile names: If the filenames you specify for many
/# of the serverâs control files begin with â/â (or âdrive:/â for Win32), the
/# server will use that explicit path. If the filenames do not begin
/# with â/â, the value of ServerRoot is prepended â so âlog/access_logâ
/# with ServerRoot set to â/wwwâ will be interpreted by the
/# server as â/www/log/access_logâ, where as â/log/access_logâ will be
/# interpreted as â/log/access_logâ.
/
/#
/# ServerRoot: The top of the directory tree under which the serverâs
/# configuration, error, and log files are kept.
/#
/# Do not add a slash at the end of the directory path. If you point
/# ServerRoot at a non-local disk, be sure to specify a local disk on the
/# Mutex directive, if file-based mutexes are used. If you wish to share the
/# same ServerRoot for multiple httpd daemons, you will need to change at
/# least PidFile.
/#
/ServerRoot â/etc/httpdâ
/
/#
/# Listen: Allows you to bind Apache to specific IP addresses and/or
/# ports, instead of the default. See also the
/# directive.
/#
/# Change this to Listen on specific IP addresses as shown below to
/# prevent Apache from glomming onto all bound IP addresses.
/#
/Listen 80
/
/#
/# Dynamic Shared Object (DSO) Support
/#
/# To be able to use the functionality of a module which was built as a DSO you
/# have to place corresponding LoadModule' lines at this location so the /# directives contained in it are actually available _before_ they are used. /# Statically compiled modules (those listed by
httpd -lâ) do not need
/# to be loaded here.
/#
/# Example:
/# LoadModule foo_module modules/mod_foo.so
/#
/Include conf.modules.d/.conf
/
/#
/# If you wish httpd to run as a different user or group, you must run
/# httpd as root initially and it will switch.
/#
/# User/Group: The name (or #number) of the user/group to run httpd as.
/# It is usually good practice to create a dedicated user and group for
/# running httpd, as with most system services.
/#
/User apache
/Group apache
/
/# âMainâ server configuration
/#
/# The directives in this section set up the values used by the âmainâ
/# server, which responds to any requests that arenât handled by a
/# definition. These values also provide defaults for
/# any containers you may define later in the file.
/#
/# All of these directives may appear inside containers,
/# in which case these default settings will be overridden for the
/# virtual host being defined.
/#
/
/#
/# ServerAdmin: Your address, where problems with the server should be
/# e-mailed. This address appears on some server-generated pages, such
/# as error documents. e.g. admin@your-domain.com
/#
/ServerAdmin root@localhost
/
/#
/# ServerName gives the name and port that the server uses to identify itself.
/# This can often be determined automatically, but we recommend you specify
/# it explicitly to prevent problems during startup.
/#
/# If your host doesnât have a registered DNS name, enter its IP address here.
/#
/#ServerName www.example.com:80
/
/#
/# Deny access to the entirety of your serverâs filesystem. You must
/# explicitly permit access to web content directories in other
/# blocks below.
/#
/
/ AllowOverride none
/ Require all denied
/
/
/#
/# Note that from this point forward you must specifically allow
/# particular features to be enabled - so if somethingâs not working as
/# you might expect, make sure that you have specifically enabled it
/# below.
/#
/
/#
/# DocumentRoot: The directory out of which you will serve your
/# documents. By default, all requests are taken from this directory, but
/# symbolic links and aliases may be used to point to other locations.
/#
/DocumentRoot â/var/www/html/publicâ
/
/#
/# Relax access to content within /var/www.
/#
/<Directory â/var/wwwâ>
/ AllowOverride All
/ # Allow open access:
/ Require all granted
/
/
/# Further relax access to the default document root:
/<Directory â/var/www/html/publicâ>
/ #
/ # Possible values for the Options directive are âNoneâ, âAllâ,
/ # or any combination of:
/# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
/#
/# Note that âMultiViewsâ must be named explicitly â âOptions Allâ
/# doesnât give it to you.
/#
/# The Options directive is both complicated and important. Please see
/# http://httpd.apache.org/docs/2.4/mod/core.html#options
/# for more information.
/#
/Options Indexes FollowSymLinks
/
/ #
/ # AllowOverride controls what directives may be placed in .htaccess files.
/ # It can be âAllâ, âNoneâ, or any combination of the keywords:
/# Options FileInfo AuthConfig Limit
/#
/AllowOverride All
/
/ #
/ # Controls who can get stuff from this server.
/ #
/Require all granted
/
/
/#
/# DirectoryIndex: sets the file that Apache will serve if a directory
/# is requested.
/#
/
/ DirectoryIndex index.html
/
/
/#
/# The following lines prevent .htaccess and .htpasswd files from being
/# viewed by Web clients.
/#
/<Files ".ht">
/ Require all denied
/
/
/#
/# ErrorLog: The location of the error log file.
/# If you do not specify an ErrorLog directive within a
/# container, error messages relating to that virtual host will be
/# logged here. If you do define an error logfile for a
/# container, that hostâs errors will be logged there and not here.
/#
/ErrorLog âlogs/error_logâ
/
/#
/# LogLevel: Control the number of messages logged to the error_log.
/# Possible values include: debug, info, notice, warn, error, crit,
/# alert, emerg.
/#
/LogLevel warn
/
/
/ #
/ # The following directives define some format nicknames for use with
/ # a CustomLog directive (see below).
/#
/#! LogFormat â%h %l %u %t â%râ %>s %b â%{Referer}iâ â%{User-Agent}iââ combined
/#! LogFormat â%h %l %u %t â%râ %>s %bâ common
/
/
/ # You need to enable mod_logio.c to use %I and %O
/ LogFormat â%h %l %u %t â%râ %>s %b â%{Referer}iâ â%{User-Agent}iâ %I %Oâ combinedio
/
/
/ #
/ # The location and format of the access logfile (Common Logfile Format).
/ # If you do not define any access logfiles within a
/# container, they will be logged here. Contrariwise, if you do
/# define per- access logfiles, transactions will be
/# logged therein and not in this file.
/#
/#CustomLog âlogs/access_logâ common
/
/ #
/ # If you prefer a logfile with access, agent, and referer information
/# (Combined Logfile Format) you can use the following directive.
/#
/CustomLog âlogs/access_logâ combined
/
/
/
/ #
/ # Redirect: Allows you to tell clients about documents that used to
/ # exist in your serverâs namespace, but do not anymore. The client
/# will make a new request for the document at its new location.
/# Example:
/# Redirect permanent /foo http://www.example.com/bar
/
/ #
/ # Alias: Maps web paths into filesystem paths and is used to
/ # access content that does not live under the DocumentRoot.
/# Example:
/# Alias /webpath /full/filesystem/path
/#
/# If you include a trailing / on /webpath then the server will
/# require it to be present in the URL. You will also likely
/# need to provide a section to allow access to
/# the filesystem path.
/
/ #
/ # ScriptAlias: This controls which directories contain server scripts.
/ # ScriptAliases are essentially the same as Aliases, except that
/# documents in the target directory are treated as applications and
/# run by the server when requested rather than as documents sent to the
/# client. The same rules about trailing â/â apply to ScriptAlias
/# directives as to Alias.
/#
/ScriptAlias /cgi-bin/ â/var/www/cgi-bin/â
/
/
/
/#
/# â/var/www/cgi-binâ should be changed to whatever your ScriptAliased
/# CGI directory exists, if you have that configured.
/#
/<Directory â/var/www/cgi-binâ>
/ AllowOverride None
/ Options None
/ Require all granted
/
/
/
/ #
/ # TypesConfig points to the file containing the list of mappings from
/ # filename extension to MIME-type.
/#
/TypesConfig /etc/mime.types
/
/ #
/ # AddType allows you to add to or override the MIME configuration
/ # file specified in TypesConfig for specific file types.
/#
/#AddType application/x-gzip .tgz
/#
/# AddEncoding allows you to have certain browsers uncompress
/# information on the fly. Note: Not all browsers support this.
/#
/#AddEncoding x-compress .Z
/#AddEncoding x-gzip .gz .tgz
/#
/# If the AddEncoding directives above are commented-out, then you
/# probably should define those extensions to indicate media types:
/#
/AddType application/x-compress .Z
/AddType application/x-gzip .gz .tgz
/
/ #
/# AddHandler allows you to map certain file extensions to âhandlersâ:
/ # actions unrelated to filetype. These can be either built into the server
/# or added with the Action directive (see below)
/#
/# To use CGI scripts outside of ScriptAliased directories:
/# (You will also need to add âExecCGIâ to the âOptionsâ directive.)
/#
/#AddHandler cgi-script .cgi
/
/ # For type maps (negotiated resources):
/ #AddHandler type-map var
/
/ #
/ # Filters allow you to process content before it is sent to the client.
/ #
/# To parse .shtml files for server-side includes (SSI):
/# (You will also need to add âIncludesâ to the âOptionsâ directive.)
/#
/AddType text/html .shtml
/AddOutputFilter INCLUDES .shtml
/
/#
/# Specify a default charset for all content served; this enables
/# interpretation of all content as UTF-8 by default. To use the
/# default browser choice (ISO-8859-1), or to allow the META tags
/# in HTML content to override this choice, comment out this
/# directive:
/#
/AddDefaultCharset UTF-8
/
/
/ #
/ # The mod_mime_magic module allows the server to use various hints from the
/ # contents of the file itself to determine its type. The MIMEMagicFile
/# directive tells the module where the hint definitions are located.
/#
/MIMEMagicFile conf/magic
/
/
/#
/# Customizable error responses come in three flavors:
/# 1) plain text 2) local redirects 3) external redirects
/#
/# Some examples:
/#ErrorDocument 500 âThe server made a boo boo.â
/#ErrorDocument 404 /missing.html
/#ErrorDocument 404 â/cgi-bin/missing_handler.plâ
/#ErrorDocument 402 http://www.example.com/subscription_info.html
/#
/
/#
/# EnableMMAP and EnableSendfile: On systems that support it,
/# memory-mapping or the sendfile syscall may be used to deliver
/# files. This usually improves server performance, but must
/# be turned off when serving from networked-mounted
/# filesystems or if support for these functions is otherwise
/# broken on your system.
/# Defaults if commented: EnableMMAP On, EnableSendfile Off
/#
/#EnableMMAP off
/EnableSendfile on
/
/# Supplemental configuration
/#
/# Load config files in the â/etc/httpd/conf.dâ directory, if any.
/IncludeOptional conf.d/.conf
/
/SSLEngine on
/SSLCertificateFile /etc/ssl/domain_name.crt
/SSLCertificateKeyFile /etc/ssl/private.key
/SSLCertificateChainFile /etc/ssl/chain.crt[quote=âhattak, post:9, topic:117606, full:trueâ]
/
/#
/# This is the main Apache HTTP server configuration file. It contains the
/# configuration directives that give the server its instructions.
/# See URL:http://httpd.apache.org/docs/2.4/ for detailed information.
/# In particular, see
/# URL:http://httpd.apache.org/docs/2.4/mod/directives.html
/# for a discussion of each configuration directive.
/#
/# See the httpd.conf(5) man page for more information on this configuration,
/# and httpd.service(8) on using and configuring the httpd service.
/#
/# Do NOT simply read the instructions in here without understanding
/# what they do. Theyâre here only as hints or reminders. If you are unsure
/# consult the online docs. You have been warned.
/#
/# Configuration and logfile names: If the filenames you specify for many
/# of the serverâs control files begin with â/â (or âdrive:/â for Win32), the
/# server will use that explicit path. If the filenames do not begin
/# with â/â, the value of ServerRoot is prepended â so âlog/access_logâ
/# with ServerRoot set to â/wwwâ will be interpreted by the
/# server as â/www/log/access_logâ, where as â/log/access_logâ will be
/# interpreted as â/log/access_logâ.
/
/#
/# ServerRoot: The top of the directory tree under which the serverâs
/# configuration, error, and log files are kept.
/#
/# Do not add a slash at the end of the directory path. If you point
/# ServerRoot at a non-local disk, be sure to specify a local disk on the
/# Mutex directive, if file-based mutexes are used. If you wish to share the
/# same ServerRoot for multiple httpd daemons, you will need to change at
/# least PidFile.
/#
/ServerRoot â/etc/httpdâ
/
/#
/# Listen: Allows you to bind Apache to specific IP addresses and/or
/# ports, instead of the default. See also the
/# directive.
/#
/# Change this to Listen on specific IP addresses as shown below to
/# prevent Apache from glomming onto all bound IP addresses.
/#
/Listen 80
/
/#
/# Dynamic Shared Object (DSO) Support
/#
/# To be able to use the functionality of a module which was built as a DSO you
/# have to place corresponding LoadModule' lines at this location so the /# directives contained in it are actually available _before_ they are used. /# Statically compiled modules (those listed by
httpd -lâ) do not need
/# to be loaded here.
/#
/# Example:
/# LoadModule foo_module modules/mod_foo.so
/#
/Include conf.modules.d/.conf
/
/#
/# If you wish httpd to run as a different user or group, you must run
/# httpd as root initially and it will switch.
/#
/# User/Group: The name (or #number) of the user/group to run httpd as.
/# It is usually good practice to create a dedicated user and group for
/# running httpd, as with most system services.
/#
/User apache
/Group apache
/
/# âMainâ server configuration
/#
/# The directives in this section set up the values used by the âmainâ
/# server, which responds to any requests that arenât handled by a
/# definition. These values also provide defaults for
/# any containers you may define later in the file.
/#
/# All of these directives may appear inside containers,
/# in which case these default settings will be overridden for the
/# virtual host being defined.
/#
/
/#
/# ServerAdmin: Your address, where problems with the server should be
/# e-mailed. This address appears on some server-generated pages, such
/# as error documents. e.g. admin@your-domain.com
/#
/ServerAdmin root@localhost
/
/#
/# ServerName gives the name and port that the server uses to identify itself.
/# This can often be determined automatically, but we recommend you specify
/# it explicitly to prevent problems during startup.
/#
/# If your host doesnât have a registered DNS name, enter its IP address here.
/#
/#ServerName www.example.com:80
/
/#
/# Deny access to the entirety of your serverâs filesystem. You must
/# explicitly permit access to web content directories in other
/# blocks below.
/#
/
/ AllowOverride none
/ Require all denied
/
/
/#
/# Note that from this point forward you must specifically allow
/# particular features to be enabled - so if somethingâs not working as
/# you might expect, make sure that you have specifically enabled it
/# below.
/#
/
/#
/# DocumentRoot: The directory out of which you will serve your
/# documents. By default, all requests are taken from this directory, but
/# symbolic links and aliases may be used to point to other locations.
/#
/DocumentRoot â/var/www/html/publicâ
/
/#
/# Relax access to content within /var/www.
/#
/<Directory â/var/wwwâ>
/ AllowOverride All
/ # Allow open access:
/ Require all granted
/
/
/# Further relax access to the default document root:
/<Directory â/var/www/html/publicâ>
/ #
/ # Possible values for the Options directive are âNoneâ, âAllâ,
/ # or any combination of:
/# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
/#
/# Note that âMultiViewsâ must be named explicitly â âOptions Allâ
/# doesnât give it to you.
/#
/# The Options directive is both complicated and important. Please see
/# http://httpd.apache.org/docs/2.4/mod/core.html#options
/# for more information.
/#
/Options Indexes FollowSymLinks
/
/ #
/ # AllowOverride controls what directives may be placed in .htaccess files.
/ # It can be âAllâ, âNoneâ, or any combination of the keywords:
/# Options FileInfo AuthConfig Limit
/#
/AllowOverride All
/
/ #
/ # Controls who can get stuff from this server.
/ #
/Require all granted
/
/
/#
/# DirectoryIndex: sets the file that Apache will serve if a directory
/# is requested.
/#
/
/ DirectoryIndex index.html
/
/
/#
/# The following lines prevent .htaccess and .htpasswd files from being
/# viewed by Web clients.
/#
/<Files â.ht*â>
/ Require all denied
/
/
/#
/# ErrorLog: The location of the error log file.
/# If you do not specify an ErrorLog directive within a
/# container, error messages relating to that virtual host will be
/# logged here. If you do define an error logfile for a
/# container, that hostâs errors will be logged there and not here.
/#
/ErrorLog âlogs/error_logâ
/
/#
/# LogLevel: Control the number of messages logged to the error_log.
/# Possible values include: debug, info, notice, warn, error, crit,
/# alert, emerg.
/#
/LogLevel warn
/
/
/ #
/ # The following directives define some format nicknames for use with
/ # a CustomLog directive (see below).
/#
/#! LogFormat â%h %l %u %t â%râ %>s %b â%{Referer}iâ â%{User-Agent}iââ combined
/#! LogFormat â%h %l %u %t â%râ %>s %bâ common
/
/
/ # You need to enable mod_logio.c to use %I and %O
/ LogFormat â%h %l %u %t â%râ %>s %b â%{Referer}iâ â%{User-Agent}iâ %I %Oâ combinedio
/
/
/ #
/ # The location and format of the access logfile (Common Logfile Format).
/ # If you do not define any access logfiles within a
/# container, they will be logged here. Contrariwise, if you do
/# define per- access logfiles, transactions will be
/# logged therein and not in this file.
/#
/#CustomLog âlogs/access_logâ common
/
/ #
/ # If you prefer a logfile with access, agent, and referer information
/# (Combined Logfile Format) you can use the following directive.
/ #
/CustomLog âlogs/access_logâ combined
/
/
/
/ #
/ # Redirect: Allows you to tell clients about documents that used to
/ # exist in your serverâs namespace, but do not anymore. The client
/# will make a new request for the document at its new location.
/# Example:
/# Redirect permanent /foo http://www.example.com/bar
/
/ #
/ # Alias: Maps web paths into filesystem paths and is used to
/ # access content that does not live under the DocumentRoot.
/# Example:
/# Alias /webpath /full/filesystem/path
/#
/# If you include a trailing / on /webpath then the server will
/# require it to be present in the URL. You will also likely
/# need to provide a section to allow access to
/# the filesystem path.
/
/ #
/ # ScriptAlias: This controls which directories contain server scripts.
/ # ScriptAliases are essentially the same as Aliases, except that
/# documents in the target directory are treated as applications and
/# run by the server when requested rather than as documents sent to the
/# client. The same rules about trailing â/â apply to ScriptAlias
/# directives as to Alias.
/#
/ScriptAlias /cgi-bin/ â/var/www/cgi-bin/â
/
/
/
/#
/# â/var/www/cgi-binâ should be changed to whatever your ScriptAliased
/# CGI directory exists, if you have that configured.
/#
/<Directory â/var/www/cgi-binâ>
/ AllowOverride None
/ Options None
/ Require all granted
/
/
/
/ #
/ # TypesConfig points to the file containing the list of mappings from
/ # filename extension to MIME-type.
/#
/TypesConfig /etc/mime.types
/
/ #
/ # AddType allows you to add to or override the MIME configuration
/ # file specified in TypesConfig for specific file types.
/#
/#AddType application/x-gzip .tgz
/#
/# AddEncoding allows you to have certain browsers uncompress
/# information on the fly. Note: Not all browsers support this.
/#
/#AddEncoding x-compress .Z
/#AddEncoding x-gzip .gz .tgz
/#
/# If the AddEncoding directives above are commented-out, then you
/# probably should define those extensions to indicate media types:
/#
/AddType application/x-compress .Z
/AddType application/x-gzip .gz .tgz
/
/ #
/# AddHandler allows you to map certain file extensions to âhandlersâ:
/ # actions unrelated to filetype. These can be either built into the server
# or added with the Action directive (see below)
/#
/# To use CGI scripts outside of ScriptAliased directories:
/# (You will also need to add âExecCGIâ to the âOptionsâ directive.)
/#
/#AddHandler cgi-script .cgi
/
/ # For type maps (negotiated resources):
/ #AddHandler type-map var
/
/ #
/ # Filters allow you to process content before it is sent to the client.
/ #
/# To parse .shtml files for server-side includes (SSI):
/# (You will also need to add âIncludesâ to the âOptionsâ directive.)
/#
/AddType text/html .shtml
/AddOutputFilter INCLUDES .shtml
/
/
/#
/# Specify a default charset for all content served; this enables
/# interpretation of all content as UTF-8 by default. To use the
/# default browser choice (ISO-8859-1), or to allow the META tags
/# in HTML content to override this choice, comment out this
/# directive:
/#
/AddDefaultCharset UTF-8
/
/
/ #
/ # The mod_mime_magic module allows the server to use various hints from the
/ # contents of the file itself to determine its type. The MIMEMagicFile
/# directive tells the module where the hint definitions are located.
/#
/MIMEMagicFile conf/magic
/
/
/#
/# Customizable error responses come in three flavors:
/# 1) plain text 2) local redirects 3) external redirects
/#
/# Some examples:
/#ErrorDocument 500 âThe server made a boo boo.â
/#ErrorDocument 404 /missing.html
/#ErrorDocument 404 â/cgi-bin/missing_handler.plâ
/#ErrorDocument 402 http://www.example.com/subscription_info.html
/#
/
/#
/# EnableMMAP and EnableSendfile: On systems that support it,
/# memory-mapping or the sendfile syscall may be used to deliver
/# files. This usually improves server performance, but must
/# be turned off when serving from networked-mounted
/# filesystems or if support for these functions is otherwise
/# broken on your system.
/# Defaults if commented: EnableMMAP On, EnableSendfile Off
/#
/#EnableMMAP off
/EnableSendfile on
/
/# Supplemental configuration
/#
/# Load config files in the â/etc/httpd/conf.dâ directory, if any.
/IncludeOptional conf.d/*.conf
/
/SSLEngine on
/SSLCertificateFile /etc/ssl/domain_name.crt
/SSLCertificateKeyFile /etc/ssl/private.key
/SSLCertificateChainFile /etc/ssl/chain.crt