cPanel Apache Handlers – Let’s create it


Webserver handlers decide the way each file functions on the server.

And the best way to include custom file support is to add cPanel Apache handlers.

However, adding improper handlers often results in website errors.

That’s why we often receive requests to enable cPanel Apache Handlers and fix its errors as a part of Service Management Services.

Today, let’s know how our Support Engineers enable the cPanel Apache handlers and fix related errors.


Why cPanel Apache Handlers?

cPanel Apache handlers instruct what action Apache must take when a file is processing.

This is useful when you want to use any extensions for the files that are not defined by default in Apache.

The common file extensions available are .cgi, .pl, .plx, .ppl, .perl, and .shtml.

Now, let’s see how our Support Engineers create a custom Apache handler in cPanel.


Creating a cPanel Apache Handler

1. We access the option cPanel >> Advanced >> Apache Handlers

2. Then enter the custom file extension in the Extension(s) field. We always add a  . before the extension name.

3. Enter the Apache handler in the Handler field.

4. Click on the Add button. That’s it.

In a similar way, a custom Apache handler can also be created by adding the following lines in .htaccess file. The default location of this rewrite file is /home/user/public_html.

AddHandler handler .extension

Here, we replace the handler with the desired handler and .extension with the desired extension. The Apache handler creation page appears as below:



For example, the below directives will cause requests for the files with the HTML extension to trigger the launch of the CGI script.

Action add-footer /cgi-bin/
AddHandler add-footer .html

Another example, the below directives will enable the send-as-is handler, which is used for files that contain their own HTTP headers. All files in the /web/htdocs/abc/ directory will be processed by the send-as-is handler, regardless of their filename extensions.

<Directory "/web/htdocs/abc">
SetHandler send-as-is


How we fix common cPanel Apache Handler errors

Now, let’s see the reasons for cPanel Apache handler related errors and how our Support Engineers fixed them.


1. Handler inheritance error

One of customer approached us with a Handler inheritance error.

He added the below Add handler code in the .htaccess file of public_html. However, this was affecting the subdomain whose path was within the public_html. He didn’t want this to happen.

AddHandler server-parsed .html

So our Support Engineers suggested adding the below code in the .htaccess file of the respective folder of the subdomain. This prevented the inheritance of the apache handler from the parent directory.

RemoveHandler .html

Finally, this fixed the error and the subdomain worked fine.


2. PHP handler code error

In a similar way, bad handlers also create errors with the websites.

For instance, when adding incorrect Handler code in .htaccess file may cause the website to download a file, instead of displaying it. Removing that code resulted in an internal server error.

Our Support Engineers checked the .htaccess file and found the below incorrect codes in it.

AddType application/x-httpd-php5 .php .html

Therefore, to fix the error, we added the code as:

AddHandler application/x-httpd-php5 .php

AddHandler tells the server how to handle each file type. AddType tells the server what MIME type to give to each client. Since the PHP handler was in use here, it was the AddHandler that was suitable.

[Need more assistance with Apache Handlers in cPanel? We’ll help you.]



In short, the cPanel Apache Handlers instructs the webserver to make a file work in a particular manner. Today, we saw how our Support Engineers created an Apache Handler in cPanel servers and fixed the errors related to it.


Source link

Leave a Reply

Your email address will not be published.