maggy

Active Member
Jun 9, 2004
25
0
151
So today was my "sit down and figure out what the hell all this EasyApache 3 nonsense is" day and I have some questions about this process.


  1. If I create a main.local template, will this cause the system to ignore main.default and will the distiller switch over to using that one without any further input?
  2. If I am using main.local and there is some future config change forced out by cPanel, how will this be managed? Will it try to merge the differences or will it fall back to an updated main.default file?
  3. Does creating a /usr/local/apache/conf/userdata/[std|ssl]/[1|2]/[user]/[domain]/*.conf file append that inside a virtual host entry or replace it in its entirety? What's the difference between this and setting a custom_vhost_template_ap(1|2) variable in the datastore?
  4. As with #2, will future cPanel updates make changes to user conf files and how will this be managed for conflicts?
  5. How are we supposed to add custom Apache modules beyond those included in EA3 and how can the process of building these modules be added to the EA3 process?
  6. Is there a similar template setup for PHP somewhere?
  7. Will the Apache templates persist between different build profiles or do different versions of the templates need to be made for each build profile?

Thanks for the help.
 
Last edited:

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,607
79
458
cPanel Access Level
Root Administrator
So today was my "sit down and figure out what the hell all this EasyApache 3 nonsense is" day and I have some questions about this process.


  1. If I create a main.local template, will this cause the system to ignore main.default and will the distiller switch over to using that one without any further input?
The .local varieties are always used to over ride what the system (cPanel) provides.

  1. If I am using main.local and there is some future config change forced out by cPanel, how will this be managed? Will it try to merge the differences or will it fall back to an updated main.default file?
THe change will be merged into the system templates, but the presence of a .local version will override what is in the system template.

  1. Does creating a /usr/local/apache/conf/userdata/[std|ssl]/[1|2]/[user]/[domain]/*.conf file append that inside a virtual host entry or replace it in its entirety? What's the difference between this and setting a custom_vhost_template_ap(1|2) variable in the datastore?
It's included in the VirtualHost, it does not replace VirtualHost contents, although you could certainly use the Include file over ride some settings in a VirtualHost.

  1. As with #2, will future cPanel updates make changes to user conf files and how will this be managed for conflicts?
The only .conf files we modify are the ones we provide. If you create your own, the only way it would be modified by cPanel is if we introduced a conf file that happened to have the same name. Using _custom in your conf file name is often safe as we don't use that in our terminology.

  1. How are we supposed to add custom Apache modules beyond those included in EA3 and how can the process of building these modules be added to the EA3 process?
Use the Include editor in WHM to add the custom modules. You can also add the LoadModule line directly to httpd.conf, but we don't guarantee it will remain in all scenarios.

This document will give you more information on integrating custom modules into the build process: http://www.cpanel.net/support/docs/ea/ea3/

  1. Is there a similar template setup for PHP somewhere?
Similar to what?

  1. Will the Apache templates persist between different build profiles or do different versions of the templates need to be made for each build profile?
The templates are tied to the Apache version, not the profile.
Thanks for the help.
 

maggy

Active Member
Jun 9, 2004
25
0
151
I didn't find anything in the docs about a custom Apache module (there's stuff about build flags and so on). Could you be more specific?

My question about PHP was if there was a template system for the php.ini similar to the one for httpd.conf or if it is just running straight off the php.ini.
 

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,607
79
458
cPanel Access Level
Root Administrator
PHP doesn't need the level of customization that Apache requires, hence no templating system. We do a few modifications to php.ini, mainly ensuring the extension directory is properly set, along with adding the appropriate lines for loading extensions installed via EA3.


As for custom Options/Modules/Extensions via EasyApache 3, documentation is at the web site I pointed to and at /scripts/easyapache --perldoc

Someone posted a walkthrough on the forum, also.