Quantcast

Perl version for foswiki 2.0.3+, is 5.10 good enough?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Perl version for foswiki 2.0.3+, is 5.10 good enough?

Raymond Lutz
Hello again:

I hope that the expertise on this list will help me get past this pesky
configuration issue. I thank you in advance for any hints you can give me.

BACKGROUND:
I am trying to upgrade to foswiki 2.0.3 (and later) from 1.1.9.
The perl version was highlighted as a big issue for foswiki 2.0.3. My
old VPS server is on Perl 5.8.8.
I attempted to install and configure foswiki on that server and after
much work, could not get it to run with stability.
Advice from this listserve was that the Perl version was problematic.
Thus, I decided that it was time to move to a later version of Perl and
move to a new VPS node (for other reasons as well).

CURRENT STATUS:
I have set up a new VPS node to allow a later version of Perl.
The node comes stock with Perl 5.10.  at /usr/bin/perl.
Perl 5.18 has been installed at /usr/local/bin/perl.
I was told the server runs on Nginx, but this is only for static
content. Dynamic content like foswiki still uses apache and mod_perl.
(I asked about this earlier)
Thus, the apache server with mod_perl is still the environment seen by
foswiki.

MY PROBLEM:
Perl scripts when called from the command line look at the shebang spec
for the perl interpreter. These run Perl 5.18 at /usr/local/bin because
that is the shebang spec.
The same script when run from a browser ignores the shebang and finds
the perl executable I believe based on what is linked in when built.

I have a 'simple' perl script that prints out environment variables,
processes, and relevant information to aid in setup of the server. If
you look down past the environment variables, you will see that Perl
5.10.1 is in use (and thus the shebang is being ignored).

http://69.73.185.68/w203/bin/simple

The invocation of perl from the viewpoint of the script is /usr/sbin/httpd

When this SAME SCRIPT is executed from the command line, like ./simple,
it shows Perl 5.18.0

Here is the response from my hosting provider:

=======QUOTE=======
Thank you for your patience. I have looked into it and was able to
reproduce the issue on my side. The problem is caused by two versions of
Perl installed on the server. As earlier in this thread we had installed
a custom Perl version for Plesk on your request and now Plesk has two
perl versions including 5.10 (default by Plesk) and 5.18 (custom version
that we installed).

The mod_perl which enables perl scripts to work over web is using
default Plesk version and due to this reason, you are seeing Perl 5.10
in browser. In order to link Perl 5.18 with Web server, first we will
have to completely remove the perl 5.10 from the server and then try to
re-intsall mod_perl. This is again extremely customized installation and
we do not recommend doing it. It can result in breaking some Plesk
related stuff if Plesk at back-end uses Perl 5.10. Please advise.
=======UNQUOTE======

It appears that mod_perl is statically linked to apache and that means
adopting a specific perl version when it is built.
Also, I believe that mod_perl is linked in and always on.
It seems that apache ignores the shebang.

QUESTIONS:
1. Regarding the version of Perl, will Perl 5.10 will be enough for
foswiki 2.0.3, or is Perl 5.18 (or better) necessary?
Using Perl 5.10 would certainly be the easy way out, and that is an
improvement over Perl 5.8.8, but is it enough??
(It appears that attempting to install a later version may have other
unintended consequences)

And, depending on the answer to #1.
2. Is there some other way to get Apache to use the newer version, other
than biting the bullet and rebuilding it??

3. is ModPerl::Registry the best PerlHandler in the httpd configuration?

Because it might be important, here is the vhost.conf for this virtual
server,
This is basically working (although it chooses the wrong Perl)

==========================================
[root@vps3 conf]# cat vhost.conf
RewriteEngine on
RewriteRule ^/([A-Z].*)
/var/www/vhosts/cognisys.com/httpdocs/w/bin/view/$1 [L]

<Directory /var/www/vhosts/cognisys.com/httpdocs/w203/bin>
     <IfModule mod_perl.c>
         <Files ~ (\.pl$|^[^\.]*$)>
                 SetHandler perl-script
                 PerlHandler ModPerl::Registry
                 Options ExecCGI
                 allow from all
                 PerlSendHeader On
         </Files>
     </IfModule>
</Directory>

<Directory "/var/www/vhosts/cognisys.com/httpdocs/w203/data">
     deny from all
</Directory>
================================================
Thanks again.
--Ray







------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Foswiki-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/foswiki-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Perl version for foswiki 2.0.3+, is 5.10 good enough?

Chris Hoefler
I would just disable mod_perl and use CGI to run Foswiki. You will then have the flexibility to use either Perl version. Various people have done performance benchmarks, but I think the general conclusion from Foswiki experiments is that mod_perl provides negligible performance benefits over CGI on a typical Foswiki installation (especially if you have the cache enabled and use FastGGI).



> On Apr 2, 2016, at 7:08 PM, Ray Lutz <[hidden email]> wrote:
>
> Hello again:
>
> I hope that the expertise on this list will help me get past this pesky
> configuration issue. I thank you in advance for any hints you can give me.
>
> BACKGROUND:
> I am trying to upgrade to foswiki 2.0.3 (and later) from 1.1.9.
> The perl version was highlighted as a big issue for foswiki 2.0.3. My
> old VPS server is on Perl 5.8.8.
> I attempted to install and configure foswiki on that server and after
> much work, could not get it to run with stability.
> Advice from this listserve was that the Perl version was problematic.
> Thus, I decided that it was time to move to a later version of Perl and
> move to a new VPS node (for other reasons as well).
>
> CURRENT STATUS:
> I have set up a new VPS node to allow a later version of Perl.
> The node comes stock with Perl 5.10.  at /usr/bin/perl.
> Perl 5.18 has been installed at /usr/local/bin/perl.
> I was told the server runs on Nginx, but this is only for static
> content. Dynamic content like foswiki still uses apache and mod_perl.
> (I asked about this earlier)
> Thus, the apache server with mod_perl is still the environment seen by
> foswiki.
>
> MY PROBLEM:
> Perl scripts when called from the command line look at the shebang spec
> for the perl interpreter. These run Perl 5.18 at /usr/local/bin because
> that is the shebang spec.
> The same script when run from a browser ignores the shebang and finds
> the perl executable I believe based on what is linked in when built.
>
> I have a 'simple' perl script that prints out environment variables,
> processes, and relevant information to aid in setup of the server. If
> you look down past the environment variables, you will see that Perl
> 5.10.1 is in use (and thus the shebang is being ignored).
>
> http://69.73.185.68/w203/bin/simple
>
> The invocation of perl from the viewpoint of the script is /usr/sbin/httpd
>
> When this SAME SCRIPT is executed from the command line, like ./simple,
> it shows Perl 5.18.0
>
> Here is the response from my hosting provider:
>
> =======QUOTE=======
> Thank you for your patience. I have looked into it and was able to
> reproduce the issue on my side. The problem is caused by two versions of
> Perl installed on the server. As earlier in this thread we had installed
> a custom Perl version for Plesk on your request and now Plesk has two
> perl versions including 5.10 (default by Plesk) and 5.18 (custom version
> that we installed).
>
> The mod_perl which enables perl scripts to work over web is using
> default Plesk version and due to this reason, you are seeing Perl 5.10
> in browser. In order to link Perl 5.18 with Web server, first we will
> have to completely remove the perl 5.10 from the server and then try to
> re-intsall mod_perl. This is again extremely customized installation and
> we do not recommend doing it. It can result in breaking some Plesk
> related stuff if Plesk at back-end uses Perl 5.10. Please advise.
> =======UNQUOTE======
>
> It appears that mod_perl is statically linked to apache and that means
> adopting a specific perl version when it is built.
> Also, I believe that mod_perl is linked in and always on.
> It seems that apache ignores the shebang.
>
> QUESTIONS:
> 1. Regarding the version of Perl, will Perl 5.10 will be enough for
> foswiki 2.0.3, or is Perl 5.18 (or better) necessary?
> Using Perl 5.10 would certainly be the easy way out, and that is an
> improvement over Perl 5.8.8, but is it enough??
> (It appears that attempting to install a later version may have other
> unintended consequences)
>
> And, depending on the answer to #1.
> 2. Is there some other way to get Apache to use the newer version, other
> than biting the bullet and rebuilding it??
>
> 3. is ModPerl::Registry the best PerlHandler in the httpd configuration?
>
> Because it might be important, here is the vhost.conf for this virtual
> server,
> This is basically working (although it chooses the wrong Perl)
>
> ==========================================
> [root@vps3 conf]# cat vhost.conf
> RewriteEngine on
> RewriteRule ^/([A-Z].*)
> /var/www/vhosts/cognisys.com/httpdocs/w/bin/view/$1 [L]
>
> <Directory /var/www/vhosts/cognisys.com/httpdocs/w203/bin>
>     <IfModule mod_perl.c>
>         <Files ~ (\.pl$|^[^\.]*$)>
>                 SetHandler perl-script
>                 PerlHandler ModPerl::Registry
>                 Options ExecCGI
>                 allow from all
>                 PerlSendHeader On
>         </Files>
>     </IfModule>
> </Directory>
>
> <Directory "/var/www/vhosts/cognisys.com/httpdocs/w203/data">
>     deny from all
> </Directory>
> ================================================
> Thanks again.
> --Ray
>
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> Transform Data into Opportunity.
> Accelerate data analysis in your applications with
> Intel Data Analytics Acceleration Library.
> Click to learn more.
> http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
> _______________________________________________
> Foswiki-discuss mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/foswiki-discuss

------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Foswiki-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/foswiki-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Perl version for foswiki 2.0.3+, is 5.10 good enough?

Raymond Lutz
Thanks, I'll give that a try. I noticed since I posted the question that the unicode enhancements were not included in Perl until 5.12.

I noticed this comment in the Perl 5.10 delta document, which leads me to believe 5.12 probably should be the minimum required by foswiki.

UTF-8 problems

The handling of Unicode still is unclean in several places, where it's dependent on whether a string is internally flagged as UTF-8. This will be made more consistent in perl 5.12, but that won't be possible without a certain amount of backwards incompatibility.



On 04/02/2016 9:29 PM, Chris Hoefler wrote:
I would just disable mod_perl and use CGI to run Foswiki. You will then have the flexibility to use either Perl version. Various people have done performance benchmarks, but I think the general conclusion from Foswiki experiments is that mod_perl provides negligible performance benefits over CGI on a typical Foswiki installation (especially if you have the cache enabled and use FastGGI).



On Apr 2, 2016, at 7:08 PM, Ray Lutz [hidden email] wrote:

Hello again:

I hope that the expertise on this list will help me get past this pesky 
configuration issue. I thank you in advance for any hints you can give me.

BACKGROUND:
I am trying to upgrade to foswiki 2.0.3 (and later) from 1.1.9.
The perl version was highlighted as a big issue for foswiki 2.0.3. My 
old VPS server is on Perl 5.8.8.
I attempted to install and configure foswiki on that server and after 
much work, could not get it to run with stability.
Advice from this listserve was that the Perl version was problematic.
Thus, I decided that it was time to move to a later version of Perl and 
move to a new VPS node (for other reasons as well).

CURRENT STATUS:
I have set up a new VPS node to allow a later version of Perl.
The node comes stock with Perl 5.10.  at /usr/bin/perl.
Perl 5.18 has been installed at /usr/local/bin/perl.
I was told the server runs on Nginx, but this is only for static 
content. Dynamic content like foswiki still uses apache and mod_perl.
(I asked about this earlier)
Thus, the apache server with mod_perl is still the environment seen by 
foswiki.

MY PROBLEM:
Perl scripts when called from the command line look at the shebang spec 
for the perl interpreter. These run Perl 5.18 at /usr/local/bin because 
that is the shebang spec.
The same script when run from a browser ignores the shebang and finds 
the perl executable I believe based on what is linked in when built.

I have a 'simple' perl script that prints out environment variables, 
processes, and relevant information to aid in setup of the server. If 
you look down past the environment variables, you will see that Perl 
5.10.1 is in use (and thus the shebang is being ignored).

http://69.73.185.68/w203/bin/simple

The invocation of perl from the viewpoint of the script is /usr/sbin/httpd

When this SAME SCRIPT is executed from the command line, like ./simple, 
it shows Perl 5.18.0

Here is the response from my hosting provider:

=======QUOTE=======
Thank you for your patience. I have looked into it and was able to 
reproduce the issue on my side. The problem is caused by two versions of 
Perl installed on the server. As earlier in this thread we had installed 
a custom Perl version for Plesk on your request and now Plesk has two 
perl versions including 5.10 (default by Plesk) and 5.18 (custom version 
that we installed).

The mod_perl which enables perl scripts to work over web is using 
default Plesk version and due to this reason, you are seeing Perl 5.10 
in browser. In order to link Perl 5.18 with Web server, first we will 
have to completely remove the perl 5.10 from the server and then try to 
re-intsall mod_perl. This is again extremely customized installation and 
we do not recommend doing it. It can result in breaking some Plesk 
related stuff if Plesk at back-end uses Perl 5.10. Please advise.
=======UNQUOTE======

It appears that mod_perl is statically linked to apache and that means 
adopting a specific perl version when it is built.
Also, I believe that mod_perl is linked in and always on.
It seems that apache ignores the shebang.

QUESTIONS:
1. Regarding the version of Perl, will Perl 5.10 will be enough for 
foswiki 2.0.3, or is Perl 5.18 (or better) necessary?
Using Perl 5.10 would certainly be the easy way out, and that is an 
improvement over Perl 5.8.8, but is it enough??
(It appears that attempting to install a later version may have other 
unintended consequences)

And, depending on the answer to #1.
2. Is there some other way to get Apache to use the newer version, other 
than biting the bullet and rebuilding it??

3. is ModPerl::Registry the best PerlHandler in the httpd configuration?

Because it might be important, here is the vhost.conf for this virtual 
server,
This is basically working (although it chooses the wrong Perl)

==========================================
[root@vps3 conf]# cat vhost.conf
RewriteEngine on
RewriteRule ^/([A-Z].*) 
/var/www/vhosts/cognisys.com/httpdocs/w/bin/view/$1 [L]

<Directory /var/www/vhosts/cognisys.com/httpdocs/w203/bin>
    <IfModule mod_perl.c>
        <Files ~ (\.pl$|^[^\.]*$)>
                SetHandler perl-script
                PerlHandler ModPerl::Registry
                Options ExecCGI
                allow from all
                PerlSendHeader On
        </Files>
    </IfModule>
</Directory>

<Directory "/var/www/vhosts/cognisys.com/httpdocs/w203/data">
    deny from all
</Directory>
================================================
Thanks again.
--Ray







------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Foswiki-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/foswiki-discuss
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Foswiki-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/foswiki-discuss



------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Foswiki-discuss mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/foswiki-discuss
Loading...