http://www.perlmonks.org?node_id=397218


in reply to Require a script not found in @INC array

The problem is that @INC contains directory names. These directory names, if they're relative paths, are relative to the directory within which the webserver is started in. Usually, this is something like /var/www or something like that. You don't normally have a problem when testing your scripts from the commandline because you're usually in the directory the scripts are in. To test this out, go to another directory and try to run your scripts. :-)

You need to add the following line above your requires: use lib qw( /path/to/your/cgi-bin ); and that will fix everything.

Being right, does not endow the right to be rude; politeness costs nothing.
Being unknowing, is not the same as being stupid.
Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence.
Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.