for the archives, a small guide to thread perl in chroot + modules get latest perl <!> use a non-root account with rights on chosen destination dir (to avoid any conflict with system perl) $ cd perl-x.x.x $ rm -f config.sh Policy.sh $ sh Configure -Dinstallprefix='/var/www/perl5web' -Dusethreads -Duseperlio -Duselargefiles -Dopenbsd_distribution=define -des $ make $ make test # can ignore (1 test failed for me) $ make install $ export PERL5LIB=/var/www/perl5web/lib/perl5/5.8.8/OpenBSD.i386-openbsd-thread-multi:/var/www/perl5web/lib/perl5/5.8.8
$ /var/www/perl5web/bin/perl -V|more # to check all is ok next edit /var/www/perl5web/lib/perl5/5.8.8/OpenBSD.i386-openbsd-thread-multi/Config.pm and check all paths (replace system one with ones you choose) ex: /usr/lib -> /var/www/perl5web/lib /usr/local -> /var/www/usr/perl5web # for modules last, you can compile your modules. set PERL5LIB like above and use the web compiled perl. ex: $ export PERL5LIB=/var/www/perl5web/lib/perl5/5.8.8/OpenBSD.i386-openbsd-thread-multi:/var/www/pe rl5web/lib/perl5/5.8.8 $ /var/www/perl5web/bin/perl Makefile.PL PREFIX=/var/www/usr/perl5web $ make $ make install Regards Julien note: to keep your security level good, you can systrace apache, use mod_security and restrict perl in apache config.