You can use the CLI to add include files that modify the content of the virtualhost containers in your Apache configuration. You may wish to do this to modify the configuration of an individual domain, or a specific user's domains. 

You must create the directories and the include files for this type of configuration. For information on the directives that you can add to the virtualhost containers in your Apache configuration, read Apache's documentation for your version of Apache:

  • Includes are the last directives in each virtualhost container. A directive or value that is in an include file will override any value that exists in the primary configuration file.
  • If you use an include that requires a specific Apache version, and you change to a different Apache version, the Apache configuration will ignore the include file.
  • If you wish to change the content of all future virtualhost containers that cPanel & WHM creates for accounts, read our Custom Templates documentation.

Include file structure

The following table includes the directory structure that you must use to create an include file for an individual domain:

  • Replace $user with the username of the account.
  • Replace $domain with the domain name.
  • Replace $includename.conf with the name of the file that you wish to include.
DescriptionApplies to specific Apache versionApplies to SSL virtualhosts?Directory structure and filename
To apply to an individual virtualhost

2.2With SSL/usr/local/apache/conf/userdata/ssl/2_2/$user/$domain/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/2_2/$user/$domain/$includename.conf
2.4With SSL/usr/local/apache/conf/userdata/ssl/2_4/$user/$domain/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/2_4/$user/$domain/$includename.conf
To apply to all virtualhosts2.2 and 2.4With and without SSL


With SSL/usr/local/apache/conf/userdata/ssl/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/$includename.conf
2.2With SSL/usr/local/apache/conf/userdata/ssl/2_2/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/2_2/$includename.conf
2.4With SSL/usr/local/apache/conf/userdata/ssl/2_4/$user/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/2_4/$user/$includename.conf
To apply to all virtualhosts for a specific user


2.2With SSL


Without SSL/usr/local/apache/conf/userdata/std/2_2/$user/$includename.conf
2.4With SSL/usr/local/apache/conf/userdata/ssl/2_4/$user/$includename.conf
Without SSL/usr/local/apache/conf/userdata/std/2_4/$user/$includename.conf