Forum archive 2000-2006

Michael Gage - WeBWorK, apache2.0 and mod_perl2.0

Michael Gage - WeBWorK, apache2.0 and mod_perl2.0

by Arnold Pizer -
Number of replies: 0
inactiveTopicWeBWorK, apache2.0 and mod_perl2.0 topic started 4/21/2004; 11:25:35 AM
last post 12/2/2004; 10:00:44 AM
userMichael Gage - WeBWorK, apache2.0 and mod_perl2.0  blueArrow
4/21/2004; 11:25:35 AM (reads: 3199, responses: 8)
Please post your comments and questions on installing WeBWorK behind an apache2.0 server (probably running mod_perl2.0). There are some differences in the way the configurations are specified, but since I haven't yet installed apache2.0 here I can't give much advice myself. There may also be some incompatibilities between the standard CPAN modules we use and apache2.0/mod_perl2.0.

Post your experiences, both failures and successes and collectively we'll save a lot of time.

--Mike

<| Post or View Comments |>


userAndrew - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
5/19/2004; 5:49:21 PM (reads: 3410, responses: 0)
Mike-- Some other guys and I have been trying to install WebWork under apache 2.0.47 and mod_perl 1.99 for a bit and we're running into a few roadblocks, esp. concerning getting the CPAN modules to install properly.

I guess a bit more background information might help explain what the problem is a bit further.

The box is a fresh install of Fedora Core 1. Perl 5.8.3, Apache 2.0.47 and mod_perl are all working and in good order. We've been installing all of the packages under the SystemRequirements page in the WiKi. Trying to install the Bundle::Apache package bombs out for us though. One of the dependancies is the mod_perl package, which we cannot get to build properly (Although, I'm curious if we really need it at all, considering it's already installed). After poking around a bit, I found that Bundle::Apache was a meta package containing several other packages. ePerl(one of the subpackages) bombs out, apparently because it's test for what version of perl is installed grep's for 'version' while perl 5.8.3 returns 'v'. Changing that in the configuration script and running make bombs out on compilation errors on ebuild_parse.c

I'm curious if maybe there are newer versions of apache, etc.. that we could install which might resolve these issues, but apparently up2date is borked at the moment on the count that redhat released a new version of fedora. If you have any suggestions, post them, and maybe we could work out an install guide for webwork under apache 2.

<| Post or View Comments |>


userMichael Gage - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
5/19/2004; 8:18:59 PM (reads: 3433, responses: 0)
We haven't yet accomplished a complete install with apache2 -- I'm not sure that anyone has yet. If mod perl is working (it is probably mod_perl2) then you won't need to install it again. You will probably have to check on the apache site for conflicts between apache2, mod_perl2 and existing modules. The ones I'd worry most about are Safe.pm, GD.pm

Good luck and let us know where you get blocked. A number of us would like to get apache2 up and running.

-- Mike

<| Post or View Comments |>


userAndrew - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
5/20/2004; 3:38:30 PM (reads: 3429, responses: 0)
I've been trudging along with the installation, and here's what i've got working so far: Apache 2.0.48 Perl 5.8.3 libapreq2.02(That involved a boat-ton of coaxing to get working) mod_perl 1.99

At any rate, i've finally gotten apache to play nice with the various modules, and i've gotten perl to work with the prequisite modules(some had to be compiled by hand). Going to the domain(webwork.sewanee.edu/webwork2) gives an error, and error_log shows this:

uncaught exception in Apache::WeBWorK::handler: argument is not a blessed reference (expecting an APR::Table derived object) at /opt/webwork2/lib/WeBWorK/ContentGenerator.pm line 927. [Thu May 20 14:35:06 2004] [error] [client 152.97.123.49] argument is not a blessed reference (expecting an APR::Table derived object) at /opt/webwork2/lib/Apache/WeBWorK.pm line 127.

I'm not a perl guru by any stretch of the imagination, so I'm a bit unsure as to how to approach this problem since I'm not really sure of what the error means. Any suggestions?

Thanks in advance- Andrew

<| Post or View Comments |>


userMichael Gage - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
5/21/2004; 7:15:44 PM (reads: 3391, responses: 0)
Hi,

Sounds like you've come pretty far. Some of the Apache request API has probably changed in apache2. Until we can adjust webwork to run under the new api's you will probably want to use Apache::compat -- see this page

http://perl.apache.org/docs/2.0/user/porting/compat.html

for help on this .

-- Mike

<| Post or View Comments |>


userAndrew - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
5/21/2004; 8:54:36 PM (reads: 3416, responses: 0)
Mike--

Putting a 'use Apache::compat' into the startup.pl file, and overriding Apache::RequestRec::notes with the compat version lets the main webwork page load without error. I then created a test course per the instructions and attemped to access it. Doing so yielded this in error_log:
uncaught exception in Apache::WeBWorK::handler: Usage: $class->jar($env, $data) at /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi/Apache/Cookie.pm line 60.
Reference found where even-sized list expected at /opt/webwork2/lib/Apache/WeBWorK.pm line 138.
Use of uninitialized value in concatenation (.) or string at /opt/webwork2/lib/Apache/WeBWorK.pm line 139.

I've traced the first error to Authen.pm line 116 which invokes Apache::Cookie->fetch, which isn't mentioned on the mod_perl list of things that need to be migrated. I'll take a look on monday and keep you posted.
-Andrew

<| Post or View Comments |>


userAdrian Vajiac - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
6/26/2004; 1:16:56 PM (reads: 3287, responses: 0)
Dear Andrew and Mike,

Any new developments in geeting together WW2 and Apache2.0/mod_per2.0? I am in the stage of the usual errors:

uncaught exception in Apache::WeBWorK::handler: argument is not a blessed reference (expecting an APR::Table derived object) at /opt/webwork2/lib/WeBWorK/ContentGenerator.pm line 1016. [Sat Jun 26 09:53:44 2004] [error] [client 67.120.190.143] argument is not a blessed reference (expecting an APR::Table derived object) at /opt/webwork2/lib/Apache/WeBWorK.pm line 127.n

I did enable Apache::compat in the startup file, but I don't know what you mean by "overriding Apache::RequestRec::notes with the compat version" you posted in the last email. Could you give me some more hints?

Thanks, Adrian

<| Post or View Comments |>


userAndrew - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
7/1/2004; 12:17:35 PM (reads: 3217, responses: 0)
Adrian-

I've been pursuing other priorities for the past few weeks, so I havn't had time to pound on Apache2, but if I remember right, the following page should be able to help you.

Check out: http://perl.apache.org/docs/2.0/user/porting/compat.html#C__r_E_gt_notes_

As you probably know, from mod_perl to mod_perl2, things got all wacky with the Apache object. That page is a fairly concise list of the differences.

-Andrew

<| Post or View Comments |>


userarūnas Burdulis - Re: WeBWorK, apache2.0 and mod_perl2.0  blueArrow
12/2/2004; 10:00:44 AM (reads: 2616, responses: 0)
Hello,

Has anybody successfully run WW2.x with Apache/mod_perl 2.0 (threaded) yet?

Sarunas

<| Post or View Comments |>