Recompiling Apache for GD, CURL or any other support
Sometimes even the novice linux administrator finds themself in a situation where they need to do some advanced maintenance.
This is moreso the case when dealing with open source or off the shelf software that has all the bells and whistles built-in so the user doesn't need to know how to run a server from the command line
Recently on one of our servers - a client needed the GD library for php image output to be rebuilt. The latest versions come with GD support but the default gd dll in the php.ini file is not set. You can uncomment the line of the gd dll but this doesn't alway enable the other feature you may need to get your scripts working. In this case the client wanted to run Slide Show Pro Director and needed GD libraries with jpeg support
So we go the easy route (remember for novice users here as our admin was not in that late) and use Cpanel WHM to run an apache update. We select GD as one of the libraries to install, click build and 15 minutes later everything is working great...as far as that client is concerned =)
Little do we know that that rebuild has caused other modules that were functioning well with PHP to not work anymore. We realized this when we were running the nightly batch for credit card processing on our hosting billing manager WHM Autopilot. After logging in - the screen was blank.
We quickly submit a ticket to support and the response is immediate as usual. (Just a quick plug - if you need a good hosting billing manager - check these guys out.)
The response was detailed and painless. Not only a quick explanation to the problem, but a solution on how I can solve it WITH a tutorial. (why can't all support be this helpful?)
For your learning pleasure here is what we got:
This is caused when PHP does not have the needed modules compiled in
A recompile of Apache/PHP is needed to include these modules. If you are root, you can do this by running
/scripts/easyapache from an SSH session to port 22
After recompiling, be sure to delete the contents of /mib_data/access_logs before logging into your admin area to avoid