Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
litespeed_wiki:other-ext-apps:apache-mod-perl-equivalent [2018/04/10 18:35] Jackson Zhang [For LSWS native configuration] |
litespeed_wiki:other-ext-apps:apache-mod-perl-equivalent [2023/03/25 14:06] Lisa Clarke Redirect to new Documentation Site |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== How to run perl script on LSWS? ===== | + | ~~REDIRECT>https://docs.litespeedtech.com/lsws/extapp/perl/configuration/~~ |
- | + | ||
- | LiteSpeed comes with a persistent Perl CGI daemon which can run perl CGI script without modification, just like mod_perl in Apache. | + | |
- | + | ||
- | ==== For Control Panel Environment ==== | + | |
- | If you configure LSWS to run perl under control panel environment, such as cPanel, you need to configure it as a Fast CGI application, and then add a script handler for "pl" or whatever suffixes used for Perl scripts. The Perl CGI daemon is located at | + | |
- | + | ||
- | /usr/local/lsws/fcgi-bin/lsperld.fpl | + | |
- | {{ :litespeed_wiki:other-ext-apps:lsperld-ext-app.png?600 |}} | + | |
- | + | ||
- | {{ :litespeed_wiki:other-ext-apps:lsperld-ext-app-handler.png?600 |}} | + | |
- | + | ||
- | Restart LSWS, then done. | + | |
- | ==== For LSWS native configuration ==== | + | |
- | For LSWS native cofiguration, you also need to procede the above step to setup Fast CGI application and then add a script handler for "pl". | + | |
- | + | ||
- | As "lsperld.fpl" utilizes the Fast CGI interface, it has normally been configured on control panel environment already. However you may need to install Perl Fast CGI module FCGI.pm first in LSWS + bare OS situation since it may not be installed. | + | |
- | + | ||
- | Perl Fast CGI module is available at CPAN(Comprehensive Perl Archive Network). | + | |
- | + | ||
- | On CentOS7, to add perl-CPAN package first. | + | |
- | yum install epel-release | + | |
- | yum install gcc | + | |
- | yum install perl-CPAN | + | |
- | + | ||
- | The following command can be used to install FCGI.pm through CPAN: | + | |
- | perl -MCPAN -e 'install FCGI' | + | |
- | + | ||
- | On CentOS box, you can easily install perl-CGI and perl-FCGI packages through: | + | |
- | yum install perl-CGI | + | |
- | + | ||
- | Verify the installed location of FCGI.pm. | + | |
- | find / -name FCGI.pm | + | |
- | /usr/lib64/perl5/vendor_perl/FCGI.pm | + | |
- | + | ||
- | In order to deal with increasing memory usage of a persistent process, the number of requests that a Perl daemon can process is controlled by an environment variable FCGI_PERL_MAX_REQ, the default is 500. | + | |
- | For example: FCGI_PERL_MAX_REQ=1000. | + | |
- | + | ||
- | Restart LSWS to make the changes effective. | + | |
- | ==== Troubleshooting ==== | + | |
- | + | ||
- | Without perl-CPAN package installed, the above installation may run into the following error: | + | |
- | Can't locate CPAN.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .). | + | |
- | BEGIN failed--compilation aborted. | + | |
- | + | ||
- | Without installing FCGI.pm, you may run into the following error in stderr.log and 503 error on screen. | + | |
- | [STDERR] Can't locate FCGI.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/local/lsws/fcgi-bin/lsperld.fpl line 3 | + | |
- | + |