Background

The use of Perl Modules is recommended at all times in order to help keep code maintainable. However, Unless the modules are installed in standard system locations you will need to overload the PERL5LIB system environment with the relevant paths for your scripts to pick up these modules.

Apache, on the other hand, does not read the system environments, and therefore your scripts which depend upon these modules will no longer work.

Solution

Edit the Apache config file:

$ sudo vi /etc/httpd/conf/httpd.conf

And insert the following lines:

LoadModule env_module /path/to/apache/mod_env.so
SetEnv PERL5LIB /path/to/lib/:/path/to/another/lib

Restart apache and thats it!

  • No labels