Re: problems with sessions and upgrading
Gerald Richter wrote: OLD STUFF: redhat 5.2, 2.0.36 kernel, 1.3.6 apache, 1.21 mod_perl, perl 5.005_02, apache session 1.04 and a storable of 0.63, embperl 1.2.b10, file system sessions and locking data. NEW STUFF: redhat 5.2, 2.0.36 kernel, 1.3.26 apache, 1.27 mod_perl, perl 5.6.1, apache session 1.54, apache sessionX 2.00b3, storable of 2.05, embperl 1.3.4, file system sessions and locking data.. ... yields the following error message: Storable binary image v56.115 more recent than I am (v2.5) at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/thaw.al) line 364, FIL chunk 1, at -e line 1 Did you try to install the old storable into the new Perl? If this works you could convert it to some other format (e.g. Data::Dumper), install the new storeable and put the session data back. i did think about doing that. that is where question #1 come in: 1) the sessions keys for the new sessions are twice as long as the old ones. generally, this is a good thing, but i am concerned that the old session data will not get read when the cookie is submitted. will the old sessions get read and reused, read and new ones created, totally ignored? after i write down my 100k or so dumps, and bring them back into the new sessions but still with the short session key, will Apache::Session readup the key and use the session when the cookie is presented by the browser? if nobody knows the answer, i'll see if i can create a coiple of sessions and test this theory. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: problems with sessions and upgrading
hi perrin, yes, i did read the discussion with interest a few months back regarding what should be stored in a session and what in the back end database. customer and order data is properly stored in a secured back end system. the cart contains data that i want to keep for 30 days, such as cart data, affiliate reference data and things of that nature. i have found the sessions to be simple, quick, convenient and a reliable way to maintain this transient data. the fact is, the data is in there, and i need to migrate it to the new sessions. i may redesign the system at a later time, but the buying season is upon us, and reenginerring this part of the system is not in the current plans. thanks! cliff [EMAIL PROTECTED] wrote: Frankly, this all begs the question of why you are putting important long-term data in Apache::Session. That isn't what it's for. You should only have transient data in there. I don't think you'll find any clear upgrade path that maintains the data, so you either hav to write your own data migration script or not upgrade Apache::Session.
problems with sessions and upgrading
OLD STUFF: redhat 5.2, 2.0.36 kernel, 1.3.6 apache, 1.21 mod_perl, perl 5.005_02, apache session 1.04 and a storable of 0.63, embperl 1.2.b10, file system sessions and locking data. NEW STUFF: redhat 5.2, 2.0.36 kernel, 1.3.26 apache, 1.27 mod_perl, perl 5.6.1, apache session 1.54, apache sessionX 2.00b3, storable of 2.05, embperl 1.3.4, file system sessions and locking data.. i am trying to update my server to the lastest and greatest from the oldest and moldiest. the data in my current file based session system is very important to me, and i cannot just dump it and create a new pristine session system. i am having two separate problems. 1) the sessions keys for the new sessions are twice as long as the old ones. generally, this is a good thing, but i am concerned that the old session data will not get read when the cookie is submitted. will the old sessions get read and reused, read and new ones created, totally ignored? obviously i would test this, but can't because of problem #2. 2) i cannot read the old session data with the new session modules. when i try to read them by doing: /usr/local/httpd/perl561/bin/perl -e 'use Storable qw(thaw); use Data::Dumper; open(FIL,/u3/sessions/01aef30dddbf0747) || die file; undef $/; my $frozen=FIL; my $thawed=thaw($frozen); print Dumper \$thawed;' yields the following error message: Storable binary image v56.115 more recent than I am (v2.5) at blib/lib/Storable.pm (autosplit into blib/lib/auto/Storable/thaw.al) line 364, FIL chunk 1, at -e line 1 i already tried googling and posting to perl5-porters. i did not find help in either arena. if anyone has a clue on this i would appreciate it. below are dumps of perl -V as well as a dump of the initial part of the session data. thanks in advance! -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ - snip - # perl -V Summary of my perl5 (5.0 patchlevel 5 subversion 2) configuration: Platform: osname=linux, osvers=2.0.36, archname=i686-linux uname='linux www.genwax.com 2.0.36 #1 mon dec 7 03:44:15 pst 1998 i686 unknown ' hint=previous, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef Compiler: cc='cc', optimize='-O2', gccversion=2.7.2.3 cppflags='-Dbool=char -DHAS_BOOL' ccflags ='-Dbool=char -DHAS_BOOL' stdchar='char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Built under linux Compiled at Nov 16 1999 11:24:18 @INC: /usr/lib/perl5/5.00502/i686-linux /usr/lib/perl5/5.00502 /usr/lib/perl5/site_perl/5.005/i686-linux /usr/lib/perl5/site_perl/5.005 - snip - # /usr/local/httpd/perl561/bin/perl -V Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=linux, osvers=2.0.36, archname=i686-linux uname='linux www.genwax.com 2.0.36 #1 mon dec 7 03:44:15 pst 1998 i686 unknown ' config_args='-Dprefix=/usr/local/httpd/perl561' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='cc', ccflags =' -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2', cppflags='' ccversion='', gccversion='2.7.2.3', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=4 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt -lutil perllibs=-lnsl -ldl -lm -lc -lposix -lcrypt -lutil libc=/lib/libc-2.0.7.so, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under linux Compiled at Sep 18 2002 22:25:33 @INC: /usr/local/httpd/perl561/lib/5.6.1/i686-linux /usr/local/httpd/perl561/lib/5.6.1
Re: mod_perl on Mac OSX
the perl.apache.org site has all the answers. the guide is on line. your answer is here: http://perl.apache.org/docs/1.0/guide/install.html#Testing_via_a_CGI_script Pierre Vaudrey wrote: Hi, I'm new to the list . I'm trying to configure mod_perl on the built-in Apache server of my Mac OSX machine. I'm working on the httpd.conf file. Can you give me simple test to check if mod_perl is running ? Pierre -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Weird problem with cookies on Netscape with apache running a virtualhost
Chris Pizzo wrote: $r-headers_out-set('Set-Cookie',$cc); $r-headers_out-set('Set-Cookie',$c); should this second one be? $r-headers_out-add('Set-Cookie',$c); i didn't get a chance to try it, but it should be easy to try. $r-cgi_header_out('Location',mypage.html); $r-send_http_header; This only sets one of the cookies ($c). How do I set multiple cookies? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Setting Cookies
ok - here is something ugly - off the top of my head. when a user submits without a cookie, or a cookie that u do not recognize: 1) Set-Cookie for the proper domain (i.e. .rhythym.com) 2) redirect them to the requested page, but with a fully qualified host/domain (i.e. http://www.rhythym.com/someLocation/) Rasoul Hajikhani wrote: Hello folks, Yesterday I posted a question about PerlTransHandler and received a lot of responses. Thanks to all of you who replied. However, my problem persists. I try to be more precise in explaining the problem today. My login module sets a few cookies that expire 24 hrs after they are set. Upon each request the validity of the cookies is checked, and in case of an expired cookie, the user is redirected to the login page to resubmit username/password again. A request with a fully qualified URL, example: http://myserver.mydomain.com/someLocation, has no problem continuing. The cookies are set. However, in case the URL has the .domain.com stripped, the login page is regenerated indefinitely. The cookies never get set. There were a few suggestions, such as using mod_rewrite, however that is out of the question because mod_rewrite was not built with our http server. My PerlTransHandler does not seem to be able to distinguish myserver.domain.com/someLocation request with myserver/someLocation. I appreciate any suggestions on this. -r -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod_perl netscape problem
there is a bug in the proxy server for apache_1.3.24. i am not familiar with mandrake, but hopefully they have an upgrade. if not, you will need to rebuild from source rpms and apply this patch. http://apache.valueclick.com/dist/httpd/patches/apply_to_1.3.24/proxy_http1.1_chunking.patch Iyengar Yoga Resources wrote: Hi I have the following problem with my mod_perl setup (apache 1.3.24 server + proxied mod_perl server 1.26, more or less standard Mandrake 8.2): Pages that go through the mod_perl server have 'strange' strings at the top and the bottom, when you view them with Netscape 4.x (any OS, it seems). Also, the page does not stop loading. This does not happen with other browsers (Mozilla 1RC2, IE 5, Opera 6). An example can be found at http://www.iyengar-yoga.com/forum/ Does anyone know what cause of this could be? My apologies if this has been asked before, I searched the archives, but didn't find anything. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Zero response, proxy error
BTW We wanted to use same apache for testing beta site along with the live one. The perl modules used have the same name but are for different virt. hosts, have different locations and different content and the errors (getting content from beta modules when asking for live site) are probably because of that. We'll try putting two apache binaries to be able to test it. yes. this is a well documented feature of mod_perl. it is a feature in most circumstances, except for the times you want it not to work that way. ;-) you can use the same object code with a separate config file ( just change the listen/port directives, and any directories if necessary ). this second instance will have its own perl interpreter and namespace. start like: httpd -c httpd_beta.conf -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Thanks and GoodBye
i have a set of detailed plans that allows for a mod_ssl front end with mutliple backends, of which i have built mod_perl and mod_php. this version works in a virtualhost environment (i did not setup the php for virtualhost, but that is trivial). it has not yet been tested in a heavy production environment, but it should build just fine, and it will work great for testing and learning. i think it will work better on 1.3.24 (because of better proxy buffering and releasing), but there was a bug in that release, and the patch came out after i reverted to 1.3.23. let me know if you'd like a copy. cliff John Kolvereid wrote: Hi Perrin, I might try it later. Actually, I am a programmer and I would very much like to take advantage of the features that mod_perl offer. If all fails I'll drop back to CGI, JSP and PHP. Thanks. John Kolvereid --- Perrin Harkins [EMAIL PROTECTED] wrote: John Kolvereid wrote: Thanks for all your help, but I am NOT able to install mod_perl. It's probably something that is not installed on my particular server - I'll never know. I suspect you were just trying to do too much at once on your first try by throwing PHP and SSL in the mix. I suggest you look at SpeedyCGI (http://daemoninc.com/speedycgi/), which offers similar speedups for CGI scripts but does not require you to recompile Apache. It doesn't have the same feature set as mod_perl, but all you wanted to do was speed up your existing CGI scripts anyway. - Perrin __ Do You Yahoo!? Yahoo! Tax Center - online filing with TurboTax http://taxes.yahoo.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
proxy front to modperl back with 1.3.24
i had trouble using a proxy front end to both a mod_perl and mod_php back end servers. this works fine for me at 1.3.23, so I reverted back to it. i copied the httpd.conf files from the 1.3.24 to my downgraded 1.3.23 and everything worked correctly on the first try. i was getting garbage characters before the first html or doctype tag, and a 0 character at the end. also, there was a delay before the connection would close. i tried turning keep alives off and on in the back end server, but i did not note a change in behavior i also tried some different buffer directives, including the new ProxyIOBufferSize. these garbage characters and delays were not present serving static content from the front end server, or when directly requesting content directly from either of the back end servers. i know they've made some mods to the proxy module, including support for HTTP/1.1, but i did not have time to research the exact cause of the problem. just a word of warning before someone spends hours in frustration, or perhaps someone can give me a tip if they've solved this problem. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: proxy front to modperl back with 1.3.24
Thomas Eibner wrote: There are some few messages concerning the problem a while ago either on this list or the dev@httpd list. http://msgs.securepoint.com/cgi-bin/get/apache0204/1/3.html etc. thanks - it must have been a bad googling day yesterday since i did not come up with this info. Can't really remember if they have fixed it in CVS already. i'll wait till 1.3.25 which will probably be coming out sooner than expected. ;-) -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: AddModule mod_perl.c
Perrin Harkins wrote: (Anyone know if mod_ssl somehow forces you to use DSO?) it doesn't force you to use DSO. i recently built a new server set-up using mod_proxy/mod_ssl on the front end, and two different back ends, one with mod_perl, and the other with mod_php. the server is set-up to handle virtual hosts on the front-end and on the mod_perl back end. i could have easily added virtual hosting for the mod_php backend, but i am only running some canned software for intranet use, so it was unnecessary. i did this for a few reasons: 1 ) i don't have to recompile everything if there is a bug found in any of the independent modules ( but i have to recompile everything to upgrade apache. :-( ) 2) i think the overall memory footprint will be smaller. 3) each of the separate servers is simpler and therefore less error prone. 4) i get the standard advantages when using a proxy in front of mod_perl. i have done some initial testing without any problems. i need to some more stress testing and then put it in production before fully recommending this set-up to others. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: How to get two perl namespaces in apache
Thomas K. Burkholder wrote: run them in two different environments - I don't think running them on two different virtual servers is going to do it, right? Doesn't apache just start one perl runtime? Please tell me if I'm mistaken about there is only one interpreter, so running a module with the same name on two different virtual servers is not going to work. So, I guess I'm wondering if there's an easy way to have two completely separate apache configurations running on the same machine (listening on different ports obviously). sure. just leave the regular config file, then build something like: httpd_dev.conf change both the Listen and Port directives to an alternate port, and then start with: httpd -c httpd_dev.conf i haven't tried this exact scenario myself, but it should work without a problem. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [OT-ish] Session refresh philosophy
Rob Nagler wrote: [EMAIL PROTECTED] writes: Looking at CGI::EncryptForm that Perrin mentioned, it appears that that module would address this concern by storing client-side in a single encrypted string that gets put in one hidden form variable. That also avoids having to verify more than once. It is always good to validate the data even if it was encrypted. It is also generally a good idea not to give the user any secrets, even if they are encrypted. In other words, avoid trusting the user. [EMAIL PROTECTED] writes: No, this just means that input must be validated once again when the last «really, really sure ?» button is depressed. Conceptually, this divides the pages of your site into two categories (not unlike the view vs. controller distinction in Model-View-Controller paradigm for GUIs): those that just interact with the user and do the navigation, and those that actually have side effects such as writing data into your database, sending e-mails, placing orders etc. It is MVC. However, instead of thinking of pages, I like to think in terms of tasks. The same task that renders the form also validates and executes it. In the case of execution, the result is a redirect described by the site's state machine. A form in our world has four states: execute_empty (fill in defaults), execute_ok, execute_other (e.g., cancel or sub form), and execute_unwind (coming back from a sub form). All of these paths go through the same task. please take this as interested and not critical. i was viewing the source: http://petshop.bivio.biz/src?s=View.items and i noticed these lines: - snip ])-put( cellpadding = 2, cellspacing = 2, ), - snip - this looks like the presentation layer peeking through. the petshop site is obviously a demo, and therefore does not have the polished look of a professional site, which is very understandable. what i wonder is, could a professional web design team make a polished website without involving the programmers? what happens when a cell padding of 3 is more desirable for the design? it seems to me, that in all of the technologies i have looked at thus far, that attempt to separate the presentation layer from the model/view, the precision and flexibility needed to graphically communicate to the user is more difficult that the standard pagedesign approaches (dreamweaver and a little embperl or other embedded language thrown into the mix) . phrased another way, how does bivio or other mvc technology, let web artists design sites as beautiful as http://www.marthastewart.com or the even more beautiful http://www.genwax.com (cheap plug)? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [OT] Really need Comments! very strange bug that happens only on Linux.
yes - this is VERY off topic for a mod_perl mailing list. remember, computers are binary machines. your 323.82 was not stored like you might think. the computer approximated using binary math. when you scaled it four places to the left, you saw the results of the approximation. FreeBSD appears more accurate on this particular calculation, but it might be less so with different input. check out one of the Math:: packages on CPAN, you should be able to find something that will give you the accuracy required for your application. Vlad Safronov wrote: While testing my perl scripts I found a strange bug that happens only on Linux (RH 6.2, 7.0), See the code below. Before your read the all text, tell me what's the Buffer value? 3238200? The answer is NO! Try this example on your Linux box SOURCE test.c: -=-=-=-= #include stdio.h #include stdlib.h main () { double Sum, ResultSum; ResultSum = 1; Sum = 323.82; char *Buffer = new char[255]; sprintf(Buffer, %d, (long)(Sum * ResultSum)); printf(Buffer = [%s], Sum = %.4f, Sum * Result = %.4f\n, Buffer, Sum, (Sum * ResultSum)); return 0; } RESULTS -=-=-=-= now compile on Linux RedHat 6.2 with gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release) Output: $ g++ test.c $ ./a.out Buffer = [3238199], Sum = 323.8200, Sum * Result = 3238200. -=-=-=-= the Buffer value is very strange! I have no ideas how Buffer can be 3238199! FreeBSD (old 3.x) works well and Buffer=3238200 as it should be, but on Linux 6.2, 7.0 it is 3238199.. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: modperl growth
one more guess - in the group of guesses. ;-) perhaps redhat or another popular distro is configuring standard with mod_perl (i use redhat, but i always hand select my packages). if this is the case, then the banner will show mod_perl, even if the user has no idea what it is, and it is not in use. the good news is, there is lots of mod_perl installed out there, so if more applications are created that use it, there is a bigger installed base capable of running them. cliff Robin Berjon wrote: For some reason, in December, it would seem that modperl just jumped ahead in market share (from 13% to nearly 20%). So given that people here are occasionally given to gloom and doom descriptions of the Perl/mod_perl world (there aren't as many people as before, the Java folks are taking over, etc.) I'd like to take this growth as well as modperl's general well doing (19.78% is a *huge* amount of people -- 600.000 servers, a fifth of the internet) as a very good sign that modperl is alive, kicking, and doing very well. Kudos to all ;-) -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod_perl Developer's Cookbook
ordered my today through the website (puts a little extra money in the hands of mod_perlers: http://www.modperlcookbook.org/ cliff Matt Sergeant wrote: My copy just arrived! I'll try and get through most of it as fast as I can and post a review. Congrats Geoff, Paul and Randy. Looks great at first glance. -- !-- Matt -- :-Get a smart net/:- -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
New mod_perl name was [Re: New mod_perl Logo]
how about Everest? Niagara? Multiphase? Slipstream? DigiServer? Pointillion? Web Mammoth? SharpWeb? Web Enterprise? EnterWeb? Ged Haywood wrote: Hi there, On Tue, 29 Jan 2002, Chris Thompson wrote: mod_perl is a lousy name. [snip] mod_perl needs a name. Something marketable, something catchy. How about BigFoot? 73, Ged. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Apache.pm failed to load!.
first off, that looks like a spanking brand new version of apache but an older version of mod_perl. you will probaby be happier with mod_perl-1.26 what happens when you try the following from the command line? perl -MApache -e 1 Rasoul Hajikhani wrote: Folks, After installing mod_perl-1.25 apache_1.3.22 I get this error message! I know this is a really serious error, but I was wondering if any one could tell me why I would get this since the installation of both mod_perl and apache went through without a problem?! -r -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: How to handle die
Mithun Bhattacharya wrote: Before anyone suggests it - no I cant move to EmbPerl or Mason or anything else. ok ePerl can be found as Apache::ePerl on cpan or http://www.engelschall.com/sw/eperl/ . I wouldnt know if Engelschall is on this list but if he is - feedback would be highly appreciated :). Also I wonder whether it has been abandoned or renamed since nothing has changed since 02-08-1998 (8th Feb ??). The latest version isnt on CPAN his new project is wml: http://www.engelschall.com/sw/wml/docs/ it has an eperl component. not sure if it will run old ePerl code however. there is a mailing list at: [EMAIL PROTECTED] To subscribe to this Majordomo-controlled mailing list, just send an E-mail to [EMAIL PROTECTED] with only subscribe sw-wml [EMAIL PROTECTED] -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: META tags added as HTTP headers
hmmm - you are still using lwp. here is a 1.0 protocol result via telnet: [root@w7 /root]# telnet www.apache.org 80 Trying 64.125.133.20... Connected to www.apache.org. Escape character is '^]'. HEAD / HTTP/1.0 HTTP/1.1 200 OK Date: Sat, 19 Jan 2002 00:37:03 GMT Server: Apache/2.0.28 (Unix) Accept-Ranges: bytes Content-Length: 5615 Connection: close Content-Type: text/html and a 1.1 version: [root@w7 /root]# telnet www.apache.org 80 Trying 64.125.133.20... Connected to www.apache.org. Escape character is '^]'. HEAD / HTTP/1.1 Host: www.apache.org HTTP/1.1 200 OK Date: Sat, 19 Jan 2002 00:40:12 GMT Server: Apache/2.0.28 (Unix) Cache-Control: max-age=86400 Expires: Sun, 20 Jan 2002 00:40:12 GMT Accept-Ranges: bytes Content-Length: 7810 Content-Type: text/html cliff p.s. my hand entry of the 1.1 protocol is experimental. ;-)) Bill Moseley wrote: At 01:20 AM 01/19/02 +0100, Markus Wichitill wrote: which part of an Apache/mod_perl setup is responsible for extracting META tags from generated HTML and adding them as HTTP headers (even with PerlSendHeaders Off)? That's lwp doing that, not Apache or mod_perl. HEAD http://www.apache.org 200 OK Cache-Control: max-age=86400 Connection: close Date: Sat, 19 Jan 2002 00:27:10 GMT Accept-Ranges: bytes Server: Apache/2.0.28 (Unix) Content-Length: 7810 Content-Type: text/html Expires: Sun, 20 Jan 2002 00:27:10 GMT Client-Date: Sat, 19 Jan 2002 00:27:17 GMT Client-Request-Num: 1 Client-Warning: LWP HTTP/1.1 support is experimental -- Bill Moseley mailto:[EMAIL PROTECTED] -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod-perl, modules and initializations
the guide is your friend: http://perl.apache.org/guide Dave Morgan wrote: What is the difference between how a BEGIN block and an anonymous block http://thingy.kcilink.com/modperlguide/porting/BEGIN_blocks.html Another problem is when I try to build a SELECT HTML element with a call to the CGI module. In my anonymous block all of a sudden the HTML form variables are no longer available with the CGI::param call. Yet I can build the select element later in the cgi scripts using the same variables without a problem. the above is not clear. In a simpler line, should I have a use DBI() in startup.pl as well as the PerlModule Apache::DBI in httpd.conf? you really only need one or the other. not sure if one is preferable with Apache::DBI. http://thingy.kcilink.com/modperlguide/config/PerlModule_and_PerlRequire_Direc.html I will summarize and post responses. not necessary. as you can see, the guide is a professional job of summarizing these types of questions. i think you'll find it invaluable. there is also a book by the author of mod_perl: http://www.modperl.org/ if you want to do any serious mod_perl programming, you probably should read through both. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Need Some Help
here is the learning guide and the bible. Learning Perl http://www1.fatbrain.com/asp/bookinfo/bookinfo.asp?theisbn=0596001320vm= Programming Perl http://www1.fatbrain.com/asp/bookinfo/bookinfo.asp?theisbn=0596000278vm= make sure you get third editions for both! here are relevant sources on the web: http://www.perlmonks.com/ http://www.perl.com/ http://use.perl.org/ news://comp.lang.perl.moderated news://comp.lang.perl.misc good luck!! N.K.Mukul wrote: Dear Mr. Vivek, I am a beginner of PERL. I want to know from where I can start, please kindly suggest me. I am a Computer engineer but I am in Networking Field now I want to start Web page designing. I am able to design Static Page but not able make a dynamic page so that I start Learning Perl. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: require -- Mason vs embperl
Lihn, Horng-Twu wrote: Kee, This helps. But if I have to do this in very page, isn't this post a serious problem to the memory consumption? Or not? in what way? - u either need the code, or u don't. if u don't need all of it, split it into smaller pieces. -Steve Maybe I'm missing something, because this seems simple. [- require foo.pl; -] will load it everytime the page is loaded [! require foo.pl; !] will load it once the first time the page is loaded. I use libraries from within Embperl all the time, I don't believe in putting full code definitions in front of the designers. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [OT] Re: Multiple Sites
(Though, it's always seemed to me that it might be a decent design to have *one* vhost dedicated to accepting payments for the other vhosts... so when the user is ready to close the deal they get kicked to payment.super_secure.com where they're asked for the credit card info to finish processing). i have seen it done this way before. just got to make sure you can identify the client since you will not get back a cookie for your vhost. you will probably have to reset the cookie for the domain of your isp, or pass as hidden data, or in the url. http://www.mydomain.com/buystuffnow.html https://www.isp.com/~mydomain.com/paymenow.html?sessionID=xyz987123456 -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: too many files open
are you sure the new system's OS has a large enough open files parameter? on linux this could be modified by the parameters /proc/sys/fs/file-max /proc/sys/fs/inode-max it am sure it is different on bsd, solaris etc.. John Michael wrote: Hi I use the perl sub below to create thumbs with image magick on my mod perl server and never really had any problems with it. I put it on another server and after a short while it froze up the server with this error. too many files open. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
OT: Re: Perl and Microsoft Excel?
fyi - this is off topic since it does not have anything to do with mod_perl in particular. you should really ask on: news://comp.lang.perl.modules or one of the other newsgroups: news://comp.lang.perl.moderated news://comp.lang.perl.misc or on this helpful website: http://www.perlmonks.org/ when you ask a question like are there any modules, think http://search.cpan.org/ one of the best things about perl, is this site and the well organized set of modules that exist on it. a simple search for 'excel' brought up this likely candidate for your use: http://search.cpan.org/doc/KWITKNR/Spreadsheet-ParseExcel-0.2403/ParseExcel.pm good luck and enjoy perl! cliff Ian wrote: The campus phone system has a 911 database that is in Microsoft Excel format, and they want to be able to take that information, and show it on a webpage, either via a search form, or in one big table. The problem is, they want to do it dynamically...the web server needs to yank it down from a samba share (or ftp), parse it, show it, and terminate. I'm really **really** new at anything perl wise...so I haven't the foggiest clue as to where I should start. I've finally gotten Apache/Mod Perl/Mod SSL installed, and working properly. Are there any modules for pulling information from an excel sheet? How about modules that keep the overworked admin from insanity? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: eval error
verify that Apache/Gateway00.pm has a true value at the end of the module. usually this looks just like this at the end: 1; if not, then u can add it if this is an in house module. if not, find out what gives from the module author. David wrote: Hello, I am getting this error message. Can anyone tell me what it is and how to get rid of it. (or if I need to worry about it) [Wed Nov 7 18:52:40 2001] [error] [Wed Nov 7 18:52:40 2001] Gateway00.pm: Apache/Gateway00.pm did not return atrue value at (eval 146) line 3.Config:[Wed Nov 7 18:52:33 2001] [notice] Apache/1.3.12 (Unix) (Red Hat/Linux) PHP/3.0.15 mod_perl/1.21 configured --resuming normal operations Perl version 5.005_03 built for i386-linuxThanks -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
OT: Re: cgi to mod_perl question
Brice D Ruth wrote: What is the difference between doing the following: close( $server ); functional interface. flush and close the file handle for this instance of the program. # $server-close(); object interface - same as above. # $server-shutdown(); object interface. cause the connection to close at the tcp/ip level. any other application instance also using this socket will no longer be able to read/write from it. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
OT: Re: cgi to mod_perl question
hi brice, because this particular question is one of basic perl, and not mod_perl. this just alerts all mod_perl readers that they can safely skip this particular question/answer and not miss any relevant mod_perl content. u sound upset - no reason to be - u got the answer u were looking for. cliff Brice D Ruth wrote: Why OT? I have a script that works under IIS/5 using CGI Perl that doesn't work under Apache with mod_perl - I'd say that's on-topic for this list! -Brice ___cliff rayman___ wrote: Brice D Ruth wrote: What is the difference between doing the following: close( $server ); functional interface. flush and close the file handle for this instance of the program. # $server-close(); object interface - same as above. # $server-shutdown(); object interface. cause the connection to close at the tcp/ip level. any other application instance also using this socket will no longer be able to read/write from it. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ -- WebProjkt, Inc. VP, Director of Internet Technology http://www.webprojkt.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [patch] overriding per directory PerlSetEnv (including bugreport)
much more well understood this time. thank you. the developers monitor this list - so if your patch has merit, i'm sure they will either commit it or something similar. YAMAMOTO Kengo wrote: Thank you responding. On Thu, 4 Oct 2001 13:48:19 -0400, Robert Landrum [EMAIL PROTECTED] wrote: Couldn't you do the same thing by reversing the ordering of your Directory entries... On Thu, 04 Oct 2001 10:43:31 -0700, ___cliff rayman___ [EMAIL PROTECTED] wrote: i don't think it is supposed to work this way according to the apache documentation. if you want the most specific (longest) one to take precedence, put it before the shorter one in the config file. Rewriting config file so takes no effect (had tested) because Apache reorders Directory section config with most specific to least specific order (by ap_core_reorder_directories()) precede merging these configs by directory_walk(). It seems that I had explained my intention not enough in last mail. I had written the patch to solve following problem. (1) Since perl_merge_dir_config() uses ap_overlay_tables() to merge PerlSetEnv variables, overridden variables remains in the table as association list elements (internal representation of Apache's table). (2) The table remains precedences and consistency kept while manipulated by Apache's standard table APIs (e.g. ap_table_get()). (3) Although (2), mod_perl scans through internal structure of the table directly as association list to dumps variables into %ENV by mod_perl_dir_env(). This causes precedence reversed on dumped %ENV variables because the list elements is ordered by descending precedence. Above process results that PerlSetEnv always activates least specific Directory section value. It's a real bug. My patch modifies (3) by reverses iterating direction on dump. I would like the patch to be tested by someone else and included in the mod_perl distribution. Please help! YAMAMOTO Kengo wrote: I think that per directory PerlSetEnv variable should be overridden by the value that in the most specific(longest) Directory section. http://localhost/cgi-bin/subdir/printenv with following config will generate VAR=/usr/local/apache/cgi-bin/subdir, but generated result is VAR=/usr/local/apache/cgi-bin. Directory /usr/local/apache/cgi-bin PerlSetEnv VAR /usr/local/apache/cgi-bin /Directory Directory /usr/local/apache/cgi-bin/subdir PerlSetEnv VAR /usr/local/apache/cgi-bin/subdir /Directory - YAMAMOTO Kengo [EMAIL PROTECTED] -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [patch] overriding per directory PerlSetEnv
i don't think it is supposed to work this way according to the apache documentation. if you want the most specific (longest) one to take precedence, put it before the shorter one in the config file. the relevant documenation is here: http://httpd.apache.org/docs/sections.html YAMAMOTO Kengo wrote: I think that per directory PerlSetEnv variable should be overridden by the value that in the most specific(longest) Directory section. http://localhost/cgi-bin/subdir/printenv with following config will generate VAR=/usr/local/apache/cgi-bin/subdir, but generated result is VAR=/usr/local/apache/cgi-bin. Directory /usr/local/apache/cgi-bin PerlSetEnv VAR /usr/local/apache/cgi-bin /Directory Directory /usr/local/apache/cgi-bin/subdir PerlSetEnv VAR /usr/local/apache/cgi-bin/subdir /Directory -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Problem with Content-Type
add the line shown write above your Files section. you have to tell the browser the mime-type. apache will do this for you, as long as you add the proper directive to do so. Matt Juszczak wrote: Hello all, I recently compiled ModPerl into Apache and added the following to my httpd.conf: AddType text/html .pl Files *.pl SetHandler perl-script PerlHandler Apache::Registry Options ExecCGI /Files Modperl itself is working wonderfully...but there's one problem ever since i installed it and began using it, Content-Type: text/html prints at the beginning of all my scripts. The scripts work fine, but for some reason, instead of the content-type being interpreted by the browser, it prints to the screen. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [ANNOUNCE] TicketMaster.com sponsors mod_perl development
i am not sure what they are using mod_perl for. i was there trying to buy tickets to the britney spears concert (for my daughter) and the servers appeared to be windowsNT. what a nightmere. hopefully stas will be able to improve their software as well as mod_perl 2.0 Daniel wrote: Wow, good for you Stas, and I'd like to say thanks for staying in the trenches as a mod_perl advocate. Also three cheers to the folks at Ticketmaster.com. I'll be buying there. -- -- Daniel Bohling NewsFactor Network -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Calling mod_perl handler from .htaccess file
perhaps you can try: use CGI::Carp qw(fatalsToBrowser) also, checkout the guide: http://perl.apache.org/guide/debug.html#Code_Debug especially the section: Using Apache::FakeRequest to Debug Apache Perl Modules which may be helpful in this case. Chris Brooks wrote: Good morning all, I recently began to host a website with the hosting company addr.com. On the good side, they run Apache / mod_perl and they only cost $10 / month. On the bad side, they don't _support_ mod_perl, and they don't allow access to the error_logs. The upshot is that I have been unable -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: memory leaking with closures
Alex Krohn wrote: Hi, With this simple test script: print Content-type: text/html\n\n; my $var = 'x' x 50; our $var = 'x' x 50; my $sub = sub { my $sub2 = sub { $var; }; }; print Done\n; $var does not get freed, and the process grows each request. Has anyone seen this sort of behavior and have any ideas/workarounds (besides don't yes. this is the documented behavior for closures. the anonymous sub must have it's own copy of $var which happens to be 500k plus perl overhead on each invocation. do that). Cheers, Alex -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: PerlModule Error
and what do the error logs say? Rasoul Hajikhani wrote: I know this question will sound primitive to most of you, however, I have this nagging error which won't go away. In my httpsd.conf, I have declared PerlModule MY::Perl::Control::WebAccess which I know is where it is supposed to be. My @INC does not include the path to that directory, however, in my startup.pl I have that directory as my use lib qw(...);. I have tried declaring: use MY::Perl::Control::WebAccess; in my startup.pl, with the same result: apache won't start. I mean what's up? I have another module sitting next to my MY::Perl::Control::WebAccess and in my startup.pl I have: use MY::Perl::Control::Cookie_Check; and all is fine and dandy... apache runs without a hitch. I tried perl5lib (all capital) in my .cshrc, again nothing. Now I come to you learned people in the hope of salvation... Any ideas people? -r -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: URI::URL - problem
i got this to work. my method is ugly. i noticed everywhere that URI::URL was being used in mod_perl and embperl, LWP::UserAgent was being used. also, i found this is the LWP (libwww-perl-5.5395) release notes: HTTP::Request, HTTP::Response will by default now use URI class, instead of URI::URL, when constructing its URI objects. This has a potential for breaking existing code as URI::URL objects had some extra methods that external code might depend upon. so - i performed this patch in (perlsitelib)/(perlversion)/LWP: snip- --- UserAgent.pm.orig Thu Aug 2 14:12:56 2001 +++ UserAgent.pmTue Aug 21 12:09:24 2001 @@ -2,7 +2,7 @@ package LWP::UserAgent; use strict; - +use URI::URL; # make mod_perl and others happy =head1 NAME LWP::UserAgent - A WWW UserAgent class snip- looks like the next version of mod_perl and embperl will need to be patched: 'use URI::URL' in all places where its objects are created and it's methods are being called. hope this helps, ___cliff rayman___ wrote: this is not a good fix. i went to build embperl, and got the same URI::URL warnings when it attempted to test with mod_perl. embperl also expects to be able to call 'new URI::URL' without a previous use/require in the code. i did test to make sure my URI::URL was installed properly perl -MURI::URL -e 'print $URI::URL::VERSION\n' which returns 5.02. This is perl, v5.6.1 built for i686-linux Server: Apache/1.3.20 (Unix) mod_perl/1.26 mod_ssl/2.8.4 OpenSSL/0.9.6b i'll have to do some more looking tomorrow. ___cliff rayman___ wrote: i had the same problem - i was able to fix it by performing the following patches. not sure how it is supposed to work without the patches. so, either something is wrong with our two configurations or something is wrong with 1.26. usually i'd believe the former, but 1.26 has only been out for 2 weeks or so. ---snip-- --- ./t/internal/hooks.t.orig Wed Jan 20 15:16:38 1999 +++ ./t/internal/hooks.tMon Aug 20 20:52:03 2001 @@ -7,6 +7,7 @@ use ExtUtils::testlib; BEGIN { require net/config.pl; } require LWP::UserAgent; +use URI::URL; #first one queries httpd for enabled hooks, #generating a hook::handler() for each and writing t/docs/.htaccess --- ./t/TEST.orig Sun Mar 5 15:36:08 2000 +++ ./t/TESTMon Aug 20 20:56:20 2001 @@ -2,7 +2,7 @@ $|++; use Config; - +use URI::URL; # First we check if we already are within the t directory if (-d t) { # try to move into test directory [root@u5 mod_perl-1.26]# diff -u ./blib/lib/Apache/test.pm.orig ./blib/lib/Apache/test.pm --- ./blib/lib/Apache/test.pm.orig Wed Feb 14 14:57:08 2001 +++ ./blib/lib/Apache/test.pm Mon Aug 20 20:49:06 2001 @@ -5,6 +5,8 @@ use Exporter (); use Config; use FileHandle (); +use URI::URL; + *import = \Exporter::import; @EXPORT = qw(test fetch simple_fetch have_module skip_test --snip-- allan wrote: running make test i cannot come aroubf this annoying message: will write error_log to: t/logs/error_log letting apache warm up...\c done /usr/bin/perl t/TEST 0 Can't locate object method new via package URI::URL at ../blib/lib/Apache/test.pm line 252. make: *** [run_tests] Error 255 -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod_perl install for win32
Jeremy Howard wrote: Steven Sajous wrote: From: Jeremy Howard [mailto:[EMAIL PROTECTED]] Steven Sajous wrote: referring to nmake with VC++ It comes with it? I don't see it Yes it does. Run the batch file Robert mentioned and it'll work from the command line. You can also download it from: ftp://ftp.microsoft.com/softlib/mslfiles/nmake15.exe PS: Please add your message _after_ quoting the previous message, otherwise you get a confusing set of quotations as you see here. Thanks :-) I used nmake but after going for a little while I get there this error 'cl' is not recognized as an internal command operable program or batch file... cl.exe is the compiler that comes with VC++. It sounds like you haven't run the .bat file that Robert pointed you too yet. Running that batch script allows you to use VC++ tools from the command line. If you have VC++, you definitely have cl.exe, since otherwise you wouldn't be able to compile anything through the IDE! i have not run VC++ for years, but my recollection is that you need to run that batch file everytime you open a new DOS window in order to set up the environment correctly. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: URI::URL - problem
i had the same problem - i was able to fix it by performing the following patches. not sure how it is supposed to work without the patches. so, either something is wrong with our two configurations or something is wrong with 1.26. usually i'd believe the former, but 1.26 has only been out for 2 weeks or so. ---snip-- --- ./t/internal/hooks.t.orig Wed Jan 20 15:16:38 1999 +++ ./t/internal/hooks.tMon Aug 20 20:52:03 2001 @@ -7,6 +7,7 @@ use ExtUtils::testlib; BEGIN { require net/config.pl; } require LWP::UserAgent; +use URI::URL; #first one queries httpd for enabled hooks, #generating a hook::handler() for each and writing t/docs/.htaccess --- ./t/TEST.orig Sun Mar 5 15:36:08 2000 +++ ./t/TESTMon Aug 20 20:56:20 2001 @@ -2,7 +2,7 @@ $|++; use Config; - +use URI::URL; # First we check if we already are within the t directory if (-d t) { # try to move into test directory [root@u5 mod_perl-1.26]# diff -u ./blib/lib/Apache/test.pm.orig ./blib/lib/Apache/test.pm --- ./blib/lib/Apache/test.pm.orig Wed Feb 14 14:57:08 2001 +++ ./blib/lib/Apache/test.pm Mon Aug 20 20:49:06 2001 @@ -5,6 +5,8 @@ use Exporter (); use Config; use FileHandle (); +use URI::URL; + *import = \Exporter::import; @EXPORT = qw(test fetch simple_fetch have_module skip_test --snip-- allan wrote: running make test i cannot come aroubf this annoying message: will write error_log to: t/logs/error_log letting apache warm up...\c done /usr/bin/perl t/TEST 0 Can't locate object method new via package URI::URL at ../blib/lib/Apache/test.pm line 252. make: *** [run_tests] Error 255 -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: URI::URL - problem
this is not a good fix. i went to build embperl, and got the same URI::URL warnings when it attempted to test with mod_perl. embperl also expects to be able to call 'new URI::URL' without a previous use/require in the code. i did test to make sure my URI::URL was installed properly perl -MURI::URL -e 'print $URI::URL::VERSION\n' which returns 5.02. This is perl, v5.6.1 built for i686-linux Server: Apache/1.3.20 (Unix) mod_perl/1.26 mod_ssl/2.8.4 OpenSSL/0.9.6b i'll have to do some more looking tomorrow. ___cliff rayman___ wrote: i had the same problem - i was able to fix it by performing the following patches. not sure how it is supposed to work without the patches. so, either something is wrong with our two configurations or something is wrong with 1.26. usually i'd believe the former, but 1.26 has only been out for 2 weeks or so. ---snip-- --- ./t/internal/hooks.t.orig Wed Jan 20 15:16:38 1999 +++ ./t/internal/hooks.tMon Aug 20 20:52:03 2001 @@ -7,6 +7,7 @@ use ExtUtils::testlib; BEGIN { require net/config.pl; } require LWP::UserAgent; +use URI::URL; #first one queries httpd for enabled hooks, #generating a hook::handler() for each and writing t/docs/.htaccess --- ./t/TEST.orig Sun Mar 5 15:36:08 2000 +++ ./t/TESTMon Aug 20 20:56:20 2001 @@ -2,7 +2,7 @@ $|++; use Config; - +use URI::URL; # First we check if we already are within the t directory if (-d t) { # try to move into test directory [root@u5 mod_perl-1.26]# diff -u ./blib/lib/Apache/test.pm.orig ./blib/lib/Apache/test.pm --- ./blib/lib/Apache/test.pm.orig Wed Feb 14 14:57:08 2001 +++ ./blib/lib/Apache/test.pm Mon Aug 20 20:49:06 2001 @@ -5,6 +5,8 @@ use Exporter (); use Config; use FileHandle (); +use URI::URL; + *import = \Exporter::import; @EXPORT = qw(test fetch simple_fetch have_module skip_test --snip-- allan wrote: running make test i cannot come aroubf this annoying message: will write error_log to: t/logs/error_log letting apache warm up...\c done /usr/bin/perl t/TEST 0 Can't locate object method new via package URI::URL at ../blib/lib/Apache/test.pm line 252. make: *** [run_tests] Error 255 -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: 2 problems with mod_perl/Apache::DBI
startup.pl cannot be run from the command line when it contains apache server specific modules. Jaye Mathisen wrote: uwb-02-chroot# uname -a FreeBSD uwb-02.cdsnet.net 4.3-STABLE FreeBSD 4.3-STABLE #0: Fri Aug 3 11:43:20 PDT 200 uwb-02-chroot# perl -v This is perl, v5.6.1 built for i386-freebsd uwb-02-chroot# cat /usr/local/etc/apache/startup.pl #!/usr/bin/perl use Apache; use Apache::Status; use Apache::DBI; use Apache::DBILogger; 1; uwb-02-chroot# ./startup.pl Can't locate object method module via package Apache (perhaps you forgot to load Apache?) at /usr/local/lib/perl5/site_perl/5.6.1/Apache/DBI.pm line 202. Compilation failed in require at ./startup.pl line 5. BEGIN failed--compilation aborted at ./startup.pl line 5. So if I comment out the Apache-module(Apache::Status) temporarily, it runs from the command prompt. However, when run under Apache PerlRequire /usr/local/etc/apache/startup.pl [Mon Aug 6 17:33:09 2001] [error] Can't load '/usr/local/lib/perl5/site_perl/5.6.1/i386-freebsd/auto/DBI/DBI.so' for module DBI: /usr/local/lib/perl5/site_perl/5.6.1/i386-freebsd/auto/DBI/DBI.so: Undefined symbol PL_dowarn at Not sure what's up. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
OT: Re: RewriteRule Proxy problems
Perrin Harkins wrote: In my lightweight httpd.conf, I have: RewriteRule ^/(.*)\.asp http://66.33.85.239/$1.asp [p] If I go to http://www.buildreferrals.com/rotatorstats.asp, it gets proxy'd correctly. But if I go to http://www.buildreferrals.com/rotatorstats.asp?login=pmak0 (that's the same URL, but with a query string added), then I get a 404 Not Found error. Of course you do. Your regex ^/(.*)\.asp doesn't match that URL with the query string. - Perrin seems like it does match. it's monday, so maybe my internal pattern matching engine needs some tweaking. ;-) the rewrite engine gets handed: /rotatorstats.asp?login=pmak0 start from the beginning of the string and match the leading slash, then match all following characters. keep backing up till \.asp is also matched. i don't see how the query string makes any difference. if he put an end of string '$' at the end of the pattern, then that would change the matching and cause it to fail. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Santitizing errors with mod_perl
perhaps the escaping is not getting done properly. is there a '[' in $OK_CHARS? can we see what the definition of $OK_CHARS looks like? also, for debugging - print the value of $OK_CHARS on the line directly above the first substitution. this will tell us if it is getting stepped on somewhere before the first time the regex gets to use it. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ John Buwa wrote: Hi there, On Fri, 27 Jul 2001, John Buwa wrote: $user =~ s/[^$OK_CHARS]//go; $pass =~ s/[^$OK_CHARS]//go; [snip] [error] Unmatched [ before HERE mark in regex m/[ HERE ^]/ at libwelcome.pl line 169. Hmmm. Your code says s/// not m//. Is this anywhere near line 169? Is it in the file libwelcome.pl? Actually the $user =~ s/[^$OK_CHARS]//go; is line 169 and the other is line 170 and it resides in the file libwelcome.pl thats the part i didnt undestand myself? is there a change the way modperl uses regex expressions or? No. mod_perl embeds the Perl interpreter into Apache. It's the same Perl interpreter you used before (unless you changed your Perl version at the same time as compiling mod_perl :). Thats what i was reading, and no its the same perl? Maybe you should try some debugging. Perhaps print your variables to the error_log too. Have a look at the debug section in the Guide. http://perl.apache.org/guide I can try, i dont know if that would shed any light on the above though it just dont make any since? John
Re: UNSUBSCRIBE?????????????
turn on your mail headers. everything you need to know is in there. if you are not getting properly unsubscribed, perhaps your email address in the netscape preferences is not the same one as you subscribed as. you should be able to discern the correct e-mail address from the Return-Path header. OTR Comm wrote: I have tried and tried and tried to get unsubscribed from this list and it does not seem to happen. Anybody have any clues about how to do this? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Appending Sessionid to all the urls
i'd still use a cookie to indentify the user. why not include the client id as part of the submission from the browser. it is easy to keep detailed data in the cookie separate for each client $sessionData{$clientKey}{$clientDataStuff}=$in{DATAKEY} Stuart Frew wrote: This is an even more pronounced problem with sessions IDs in URLs, though. With cookie based session tracking, the second browser window will send the same cookie that the first browser window received. And there lies the rub. The user is using the system to process client A. The cookie contains stateful information including the client ID. They then open an new browser window, and lookup client B, recieving a new session ID with new state information, including the client ID. The user then submits the form to the server. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod_perl and 700k files...
Morbus Iff wrote: Ahhh. Ok. What's this $SIG{'USR2'} thingy. What's that do? has changed. Am I supposed to do some checking against the file -M time myself, and then send a USR2 signal myself? yes. this method assumes that the administrator of apache has made a change to a file and now wants to reload it. this is how some unix services work such as named and inetd. you modify the config files and send a kill -HUP to the daemon. in this case you would do: kill -USR2 `cat /path/to/apache/logs/httpd.pid` -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: vhost and mod_perl
check out this section in the guide: http://thingy.kcilink.com/modperlguide/config/A_Script_From_One_Virtual_Host_C.html Bird Lei wrote: I use vhost_alias_module to set up subdomains for different users. -- at my httpd.conf VirtualDocumentRoot /home/%-4/web And use Apache::Registry to run the *.cgi script. Script 1: /home/user1/web/index.cgi Script 2: /home/user2/web/index.cgi Sometimes the scripts got mixed up. When accessing http://user1.level3.level2.com, the server gives me the script /home/user2/web/index.cgi instead. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
OT: Re: glimmer of hope -- cookies: www.host.tld vs host.tld
u can also use the rewrite engine - for our domain genwax.com: RewriteCond %{HTTP_HOST}^genwax\.com$ [NC] RewriteRule ^(.+) http://www.genwax.com$1 [R,L] notice that it also makes sure to convert any case such as: GeNwAx.com to www.genwax.com -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ darren chamberlain wrote: will trillich ([EMAIL PROTECTED]) said something to this effect on 05/02/2001: Cookies are restricted to certain domains, for security reasons. (Why have a microsoft.com cookie sent to debian.org, right?) So all cookies need domain=box.subnet.intralan.organization.tld *snip* A similar thread happened a while ago (see, e.g., [EMAIL PROTECTED]">http://forum.swarthmore.edu/epigone/modperl/blixnortix/[EMAIL PROTECTED]); Rusty Foster (of kuro5hin.org fame) explained his solution pretty well here: [EMAIL PROTECTED]">http://forum.swarthmore.edu/epigone/modperl/blixnortix/[EMAIL PROTECTED] (darren)
Re: glimmer of hope -- cookies: www.host.tld vs host.tld
Rob Bloodgood wrote: Or at the very least, two segments thereof: domain=.org.tld --- lots of snippage --- you have it right at the top. assuming you are operating in org.tld, so www.org.tld and modperl.org.tld are valid boxes, then you send the domain string as .$domain. This one cost me about a week, so don't feel too bad! if someone enters our site with domain.tld (no hostname), everything works fine as long as they keep using relative links. as soon as they select or get redirected to an absolute link (usually when changing schemes http = https), then the domain of the cookie fails, and the cookie data is lost (as far as the browser is concerned). this problem is avoidable if u insure that a proper hostname is used along with a domain.tld. i do this with mod_rewrite. there are probably many ways to do it, but the effect is the same, insure that the cookie domain matches through the user's entire session. someone suggested using the apache directive canonical hostname. my canonical hostname does not always match the host and domain.tld of my server. if it does, then this directive will probably eliminate the no hostname cookie domain matching problem (a technical term ;-) ). -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: deprecated our() indicated in perldoc of Getopt::Std
1) 'our' is not deprecated. it is new. i know it was in 5.6.0, not sure if it was in earlier than that. u can check the CHANGES file to see exactly when it was added. 2) this is really a perl question, not a mod_perl question. next time try one of the following for perl related help: http://www.perlmonks.org/ news://comp.lang.perl.moderated news://comp.lang.perl.misc -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ "Alan E. Derhaag" wrote: I upgraded to v5.6.1 of perl and viewed the documentation for the Getopt::Std as I wasn't familiar with its use for command line arguments on a new install function I was building. The docs indicate use of our( $opt_foo, $opt_bar ) should 'use strict vars' be in use. I wasn't familiar with this deprecated version of global variable definitions but I used it.. much to my chagrin when the install was actually performed on a perl v5.05003 equipped machine. How did an older version of Getopt::Std get installed with a later version of perl?
Re: Dynamic httpd.conf file using mod_perl...
checkout the following link: http://www.geocrawler.com/archives/3/182/2000/3/0/3377287/ the search engine at: http://www.geocrawler.com/lists/3/Web/182/0/ is your friend. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Brian wrote: It's all written, only problem is the mod_rewrite directives. Any ideas on how to do them in a Perl directive? Thanks in advance.
Re: Run away processes
i think that it should be: warn "\$class=$class can't \$UNIVERSAL::AUTOLOAD=$UNIVERSAL::AUTOLOAD!\n"; leads to less grepping and a quicker understanding of the problem. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Aaron Johnson wrote: So should the entry in the Guide be rewritten to: sub UNIVERSAL::AUTOLOAD { my $class = shift; if ($UNIVERSAL::AUTOLOAD !~ /DESTROY$/) { warn "$class can't $UNIVERSAL::AUTOLOAD!\n"; } } ??
Re: Getting MAC address
you can only get a MAC address for those machines which are on your same subnet. if you are using linux/unix try: arp sorry - but there is no reliable way to identify machines across the internet. that is why there are 'cookies'. intel tried to make this possible by embedding a number into their chips, but us privacy freaks had their heads. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ John Whitnack wrote: Is there a way to get a person MAC address using apache, mod_perl or javascript. I have yet to find a way to do this? I need a way to uniquely identify the computer a person is using (i.e. not ip address). John Whitnack
Re: Newbie Questions
julie wang wrote: replace that with if it is advise not to do so when using mod_perl?? The FAQ suggests using "goto" kind of statement. I rather not use that. What other alternatives do I have? Thanks! which FAQ suggested a goto statement? if u are thinking that something like: return REDIRECT; is a return from subroutine statement that sends u to the REDIRECT label somewhere, that is not the case. return - exits u from the current sub and the value after it is returned to the calling sub. in this case REDIRECT is a constant. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
[OT] Re: wheris @INC defined ?
that's Config.pm. which one of the variables would u change? sitelib and sitearch?? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Paul Cotter wrote: To: "Henri Delebecque" [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] "Henri" == Henri Delebecque [EMAIL PROTECTED] writes: Henri I'm a mod_perl newbie, trying to install it on an apache server Henri on a Digital-Unix platform. Henri I have succeded, with problems, to make a mod_perl lib. Henri Unfortunately, when I launch the apache server, it fails with Henri an error message telling that it can't locate Apache.pm in @INC. Henri More strangely, it says that @INC contains Henri /u/richm/QXZ-OSF/nsPerl5.005_03/lib/alpha-dec-osf.../webmaster/apache, Henri when the apache dierctory is in fact /webmaster/apache_1.3.19 Henri (the /webmaster/apache is the operationnal version of the server) You can alter these in config.pm in your lib directory.
Re: Forbidden access
"Wang, Pin-Chieh" wrote: Hi, I build Apache_1.3.14 with mod_perl-1.25 on RedHat Linux 7.0 with DSO. Initially both server-status and server-info works fine, but some how both of these pages denied my display request.(403 Forbidden ) I have checked httpd.conf where I have Location /server-status SetHandler server-status Order deny,allow Deny from all Allow frpm .mydomain.com can we assume this is actually: Allow from .mydomain.com in your conf?? /Locatiom In the log file it simply says denied by server. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: wheris @INC defined ?
i believe it is originally defined at compile time. do a: perl -V and it will show you the compiled in perl lib locations.. you can place this at the top of your code b4 the other use directives: use lib "/u/richm/QXZ-OSF/nsPerl5.005_03/lib/alpha-dec-osf.../webmaster/apache_1.3.19"; and it will add this to the library list for the runtime of the routine it is used in. or u can try this (i haven't - so may the force be with u): cd /u/richm/QXZ-OSF/nsPerl5.005_03/lib/alpha-dec-osf.../webmaster ln -s apache apache_1.3.19 hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Henri Delebecque wrote: hello, I'm a mod_perl newbie, trying to install it on an apache server on a Digital-Unix platform. I have succeded, with problems, to make a mod_perl lib. Unfortunately, when I launch the apache server, it fails with an error message telling that it can't locate Apache.pm in @INC. More strangely, it says that @INC contains /u/richm/QXZ-OSF/nsPerl5.005_03/lib/alpha-dec-osf.../webmaster/apache, when the apache dierctory is in fact /webmaster/apache_1.3.19 (the /webmaster/apache is the operationnal version of the server) I think that something has not been set during the make phase. any hints ?
Re: apache question...
i would use mod_rewrite, but, since this is a mod_perl forum, i have to suggest that u write a mod_perl transhandler that does a redirect. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Joseph Crotty wrote: I am set up on apache_1.3.14/mod_perl currently, however, have an older non-mod_perl apache_1.3.6. The old apache's index.html needs to redirect to the index.html on the new apache/mod_perl. The old and new apache servers are on different unix boxes. Anyone think of an elegant block directive solution, because I can't. Thanks, Joe Crotty
Re: files with same ext, but different handler based on partial name
check out: http://www.apache.org/docs-2.0/mod/core.html#filesmatch make sure you also see the "see also". ;-) by the way, this is standard apache configuration stuff that has nothing to do with mod_perl. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Surat Singh Bhati wrote: Hi, I want to do configure my mod_perl as: "All the files having extension .cgi should be run as standard CGI, except *fixname*.cgi , if any file match *fixname*.pl , it should run as mod_perl. " Is it possible to files having the same ext , but depend on partial file name , apache consider them differently, files may be located any where not in a special directory. I wat to do something like: Files *fixname*.cgi SetHandler perl-script PerlHandler Apache::Registry PerlSendHeader On Options +ExecCGI /Files AddHandler cgi-script .cgi Is it possible? Regards, -Surat Singh Bhati
Re: [OT] SSL ,Apache Keep alive
this is no longer a mod_perl question but, check out: http://www.modssl.org/docs/2.8/ssl_reference.html#ToC5 - SSLSessionCache i'm am far from an SSL expert, but this should help minimize the SSL authorization overhead. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Sachin Lakhanpal wrote: Hello , i am trying to understand what am i supposed to come up with , so here i have a client application trying to do a SECURE HTTP POST to the apache webserver . The data to be posted is huge running in megs, so what we are doing is we are at the client end splitting this data in smaller chunks . so heres what we want , the client is working with raw sockets to open a socket to the webserver and start the posting,we don't want to get tied to the fact that after each post of a small chunk we will have to close the socket and do a post for the next chunk of data and so on,there would be an unacceptable over head of SSL authorization everytime the socket is opened. so i have a question regarding the Keep alive option on apache,would this option help us here so that initially when the client opens a socket to the webserver SSL authorization takes place and from then on this same connection (same session) SSL authorization is not required for successive post requests.
Re: Segfault: apache-1.3.17+modperl-1.25
did u compile the perl, apache and mod_perl all with the same compiler, assembler and linker?? you may want to search in the archives: solaris dso sigsegv i remember quite a few issues a while back. hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Gary Algier wrote: My children are segfaulting. I have: Solaris 2.6 (w/all latest patches installed right after the OS) Perl 5.6.0 (no largefiles, no threads) Apache 1.3.17 modperl 1.25 (as a DSO) gcc 2.95.2 (using Sun's as and ld) If I run apache leaving out: LoadModule perl_modulelibexec/libperl.so AddModule mod_perl.c it runs just fine. Put them in and the child seg faults. I did manage to gdb the process and it says: Program received signal SIGSEGV, Segmentation fault. 0xef0a2e00 in perl_header_parser () (gdb) where #0 0xef0a2e00 in perl_header_parser () #1 0x20714 in run_method () #2 0x208e4 in ap_header_parse () #3 0x3d9bc in process_request_internal () #4 0x3ded0 in ap_process_request () #5 0x314c8 in child_main () #6 0x31854 in make_child () #7 0x31dcc in perform_idle_server_maintenance () #8 0x32630 in standalone_main () #9 0x32f64 in main () Unfortunately, there are no debugging symbols so it is limited. It wasn't easy getting this, though if it would help I will endeavor to rebuild everything with debugging symbols and try again. In general, I know that DSOs are working as I runtime load the max. I also load php 4.0.4pl1 that way and it works. Any ideas? Does the trace help?
Re: Redirection Location MUST be absolute (was Re: Send a cookie, AND a redirect ?)
you are supposed to be able to use: base href="/foo/bar/fred.html" which changes the base of the document. if u really wanted to use internal redirects, you would have to insure that all documents contained this tag, or filter the page and include it yourself. of course this is just a spec, determining which browsers properly use it, is beyond me. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ "Randal L. Schwartz" wrote: "Robert" == Robert Landrum [EMAIL PROTECTED] writes: Robert By using relative *URLs* such as /some/location, you avoid changing Robert the location field in the browser window, which is often desired. If Robert you use an absolute *URL*, the location field changes to the absolute Robert URL. Actually, I'll disagree with that. NEVER use internal redirects (which you call "relative URLs" but that's another story) unless you are fully understanding about WHY *I* say *NEVER*, in my strongest language. As a hint... are you willing to be responsible for how all the relative URLs in the resulting document are treated, including all documents called from there? The problem is that the browser still thinks it got "/foo/bar/fred.html", so if an internal redirect was performed to "/abc/def/ghi.html" and it had a relative link to "../xyz.html", the browser will fetch "/foo/xyz.html", not to the correct "/abc/xyz.html", since the browser had no visibility to the /abc part of that equation. NEVER use internal redirects. At least not until you understand why I say "NEVER".
Re: Redirection Location MUST be absolute (was Re: Send a cookie, AND a redirect ?)
___cliff rayman___ wrote: you are supposed to be able to use: base href="/foo/bar/fred.html" make that: base href="http://host.mydomain.net/foo/bar/fred.html" which changes the base of the document. if u really wanted to use internal redirects, you would have to insure that all documents contained this tag, or filter the page and include it yourself. of course this is just a spec, determining which browsers properly use it, is beyond me. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ "Randal L. Schwartz" wrote: "Robert" == Robert Landrum [EMAIL PROTECTED] writes: Robert By using relative *URLs* such as /some/location, you avoid changing Robert the location field in the browser window, which is often desired. If Robert you use an absolute *URL*, the location field changes to the absolute Robert URL. Actually, I'll disagree with that. NEVER use internal redirects (which you call "relative URLs" but that's another story) unless you are fully understanding about WHY *I* say *NEVER*, in my strongest language. As a hint... are you willing to be responsible for how all the relative URLs in the resulting document are treated, including all documents called from there? The problem is that the browser still thinks it got "/foo/bar/fred.html", so if an internal redirect was performed to "/abc/def/ghi.html" and it had a relative link to "../xyz.html", the browser will fetch "/foo/xyz.html", not to the correct "/abc/xyz.html", since the browser had no visibility to the /abc part of that equation. NEVER use internal redirects. At least not until you understand why I say "NEVER". -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Translation handler continuous loop problem
you will probably need to post the handler if you want any help with it. "Sinclair, Alan (CORP, GEAccess)" wrote: I have just installed a mod_perl URI translation handler to extract a session id from the URI. In general the translation works correctly by removing the session id from the URL when detected. However, a Netscape browser client triggers Apache to enter a continuous loop if I do not specify the domain name in the hostname component of the URL. The problem does not occur in Internet Explorer (that surprised me.) All these examples are from Nestcape on both NT and Unix. For example, say I enter http://lions.access.com/sp9/outage.html The translation handler works correctly. If I then enter: http://lions/sp9/outage.html There is a continuous loop in Apache and on each iteration, an entry is written to access_log. I have to stop the request in Netscape. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Apache Version 1.3.0 required, aborting... You need mod_perl 1.24_01 , or later to build with Apache 1.3.14
ged - you are just plain wrong here. the error message is very clear. u just need to install apache 1.3.0. to hell with bugs and security problems. newer software is just bloated and cpu hungry anyways. well, now i'll get pack to my port of perl 4, mod_perl, and apache 1.3.0 for the TRS-80. cliff "G.W. Haywood" wrote: Hey guys, Even google knew the answer to this one. See http://www.mail-archive.com/modperl%40apache.org/msg12607.html I thought if I put the error message AND the solution in the subject line, with a slightly sarcastic message, and then everybody flamed me (being careful to keep the subject line) so as to make the longest thread you ever did see, maybe somebody would find it one day before spamming the List. Flames please? Try to make them original and witty, there'll be a prize for the best one before the end of January. The organizer's decision is final... 73, Ged. PS: You need mod_perl 1.24_01 or later to build with Apache 1.3.14 :) -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Here's patch to make mod_perl-1.24 work with apache_1.3.14
you just needed mod_perl-1.24_01. you can get it at: http://perl.apache.org/dist/ apparently the underscore in the patch level keeps it from showing up as the latest release in CPAN. cliff Dave Dykstra wrote: I'm not subscribed to this mailing list, but I searched the archives for this patch and found no direct answers, only references to the current modperl in CVS. I extracted the relevant pieces into a patch and thought other people would have the same problem and would benefit from this patch. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
killing of greater than MaxSpareServers
here is an excerpt from httpd.h: /* * (Unix, OS/2 only) * Interval, in microseconds, between scoreboard maintenance. During * each scoreboard maintenance cycle the parent decides if it needs to * spawn a new child (to meet MinSpareServers requirements), or kill off * a child (to meet MaxSpareServers requirements). It will only spawn or * kill one child per cycle. Setting this too low will chew cpu. The * default is probably sufficient for everyone. But some people may want * to raise this on servers which aren't dedicated to httpd and where they * don't like the httpd waking up each second to see what's going on. */ #ifndef SCOREBOARD_MAINTENANCE_INTERVAL #define SCOREBOARD_MAINTENANCE_INTERVAL 100 #endif and the code from http_main.c: if (idle_count ap_daemons_max_free) { #retrieved indirectly from MaxSpareServers /* kill off one child... we use SIGUSR1 because that'll cause it to * shut down gracefully, in case it happened to pick up a request * while we were counting */ kill(ap_scoreboard_image-parent[to_kill].pid, SIGUSR1); idle_spawn_rate = 1; } Perrin Harkins wrote: On Wed, 17 Jan 2001, Sam Horrocks wrote: If in both the MRU/LRU case there were exactly 10 interpreters busy at all times, then you're right it wouldn't matter. But don't confuse the issues - 10 concurrent requests do *not* necessarily require 10 concurrent interpreters. The MRU has an affect on the way a stream of 10 concurrent requests are handled, and MRU results in those same requests being handled by fewer interpreters. On a side note, I'm curious about is how Apache decides that child processes are unused and can be killed off. The spawning of new processes is pretty agressive on a busy server, but if the server reaches a steady state and some processes aren't needed they should be killed off. Maybe no one has bothered to make that part very efficient since in normal circusmtances most users would prefer to have extra processes waiting around than not have enough to handle a surge and have to spawn a whole bunch. - Perrin -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: killing of greater than MaxSpareServers
i and others have written on the list before, that pushing apache children into swap causes a rapid downward spiral in performance. I don't think that MaxClients is the right way to limit the # of children. i think MaxSpareCoreMemory would make more sense. You could set this to 1K if your server was designated for Apache only, or set it to a higher value if it were a multipurpose machine. mod_perl/apache and paging/swapping just don't mix. Perrin Harkins wrote: On Wed, 17 Jan 2001, ___cliff rayman___ wrote: here is an excerpt from httpd.h: Good reading. Thanks. It looks as if Apache should find the right number of servers for a steady load over time, but it could jump up too high for a bit when the load spike first comes in, pushing into swap if MaxClients is not configured correctly. That may be what Sam was seeing. - Perrin -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: killing of greater than MaxSpareServers
if you are able to determine how much core memory is left, you may also be able to determine average apache process size and variance. then, apache can determine whether or not to start up any additional children. i'm not sure how much processor time would be taken to determine free core memory. might not be something worth doing on every scoreboard cycle. there is an additional bonus for determining child size mean and variance. if it is noted that a process is growing exceptionally large compared to other processes, it could be slated for death based on its growth size and rate, rather than the number of requests that it served. Perrin Harkins wrote: On Wed, 17 Jan 2001, ___cliff rayman___ wrote: i and others have written on the list before, that pushing apache children into swap causes a rapid downward spiral in performance. I don't think that MaxClients is the right way to limit the # of children. i think MaxSpareCoreMemory would make more sense. You could set this to 1K if your server was designated for Apache only, or set it to a higher value if it were a multipurpose machine. I've thought about that too. The trick is, Apache would need to know things about your application to do that right. It would need to know how big your processes were likely to be and how big they could get before they die. Otherwise, it has no way of knowing whether or not there's enough room for another process. A combination of Apache::SizeLimit and a dynamically changing MaxClients could possibly accomplish this, but you wouldn't want to run it too close to the edge since you don't want to have to axe a process that's in the middle of doing something just because it got a little too big (i.e. no hard limits on per-process memory usage). You can't change MaxClients while the server is running, can you? - Perrin -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: killing of greater than MaxSpareServers
i think its worth posting to the list. it will be forever in the archives when someone needs it. thanks! Balazs Rauznitz wrote: On Wed, 17 Jan 2001, ___cliff rayman___ wrote: i and others have written on the list before, that pushing apache children into swap causes a rapid downward spiral in performance. I don't think that MaxClients is the right way to limit the # of children. i think MaxSpareCoreMemory would make more sense. You could set this to 1K if your server was designated for Apache only, or set it to a higher value if it were a multipurpose machine. mod_perl/apache and paging/swapping just don't mix. Once I wrote a patch to apache so that it would not spawn new children if a certain file was present in the filesystem. You can then have a watchdog process touch or delete that file based on any criteria you want. Imo having a separate and flexible process is better than apache trying to make these decisions... I'll dig it up if interested. -Balazs -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: setting lib for mod_perl installation
did u check out this section in the guide yet? http://perl.apache.org/guide/install.html#Installation_Without_Superuser_P cliff Dave Armstrong wrote: I just moved from dedicated to virtual hosting sigh, and was wondering how to configure mod_perl to install the modules to a private lib, outside of @INC. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: connecting apache to mysql
not irrelevant, and well covered here: http://perl.apache.org/guide/databases.html hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Al Abdullaev wrote: Sorry guys for irrelevant question, but where can I find guide how to connect apache server to mysql database? thanks a lot.
Re: mod_perl-1.24 / apache-1.3.14 problem
hmmm. i checked CPAN about a month ago, and they had the new version. i believe CPAN is actually a bunch of mirrored sites that the dns redirects to. I wonder if the one you ended up getting is not getting properly mirrored? Mike Hanafey wrote: Thanks for the replies. Next time I will not go to CPAN for mod_perl... Mike Hanafey DuPont Ag Products | Delaware Technology Park, Suite 200/206 | 1 Innovation Way, PO BOX 6104 | Newark, DE 19714-6104 | Email: [EMAIL PROTECTED] Phone: (302)631-2608 Fax: (302)631-2607 ++ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: mod_perl-1.24 / apache-1.3.14 problem
u need mod_perl-1.24_01 for apache-1.3.14 u might have saved yourself some patching :-) Mike Hanafey wrote: The httpd.h file in apache-1.3.14 has apparently changed. I hacked the following changes to mod_perl-1.24 to fix things (it's the same change in two files). Without the change Makefile.PL was picking up the wrong apache source (even though I have it the source explicitly), and the "src.t" test fails on make test. % diff -c ./Makefile.PL.orig ./Makefile.PL | /tmp/tmp *** ./Makefile.PL.orig Sun May 14 20:07:58 2000 --- ./Makefile.PL Wed Jan 3 15:03:16 2001 *** *** 1494,1504 my($server, $version, $rest); my($fserver, $fversion, $frest); my($string, $extra, @vers); while($fh) { next unless /^#define/; ! s/SERVER_PRODUCT \"/\"Apache/; #1.3.13+ ! next unless s/^#define\s+SERVER_(BASE|)VERSION\s+"(.*)\s*".*/$2/; ! chomp($string = $_); #print STDERR "Examining SERVER_VERSION '$string'..."; #could be something like: --- 1494,1512 my($server, $version, $rest); my($fserver, $fversion, $frest); my($string, $extra, @vers); + my($sbp, $sbv); while($fh) { next unless /^#define/; ! m/SERVER_BASEPRODUCT\s+"(.+)"/ and $sbp = $1; ! m/SERVER_BASEREVISION\s+"(.+)"/ and $sbv = $1; ! if ($sbp $sbv) { ! # Apache 1.3.14 ! $string = "$sbp/$sbv"; ! } else { ! s/SERVER_PRODUCT \"/\"Apache/; #1.3.13+ ! next unless s/^#define\s+SERVER_(BASE|)VERSION\s+"(.*)\s*".*/$2/; ! chomp($string = $_); ! } #print STDERR "Examining SERVER_VERSION '$string'..."; #could be something like: % diff -c ./lib/Apache/src.pm.orig ./lib/Apache/src.pm | /tmp/tmp *** ./lib/Apache/src.pm.origFri Mar 31 14:05:24 2000 --- ./lib/Apache/src.pm Wed Jan 3 16:10:19 2001 *** *** 209,220 my($server, $version, $rest); my($fserver, $fversion, $frest); my($string, $extra, @vers); while($fh) { next unless /^#define/; ! s/SERVER_PRODUCT \"/\"Apache/; #1.3.13+ ! next unless s/^#define\s+SERVER_(BASE|)VERSION\s+"(.*)\s*".*/$2/; ! chomp($string = $_); #print STDERR "Examining SERVER_VERSION '$string'..."; #could be something like: --- 209,228 my($server, $version, $rest); my($fserver, $fversion, $frest); my($string, $extra, @vers); + my($sbp, $sbv); while($fh) { next unless /^#define/; ! m/SERVER_BASEPRODUCT\s+"(.+)"/ and $sbp = $1; ! m/SERVER_BASEREVISION\s+"(.+)"/ and $sbv = $1; ! if ($sbp $sbv) { ! # Apache 1.3.14 ! $string = "$sbp/$sbv"; ! } else { ! s/SERVER_PRODUCT \"/\"Apache/; #1.3.13+ ! next unless s/^#define\s+SERVER_(BASE|)VERSION\s+"(.*)\s*".*/$2/; ! chomp($string = $_); ! } #print STDERR "Examining SERVER_VERSION '$string'..."; #could be something like: Mike Hanafey DuPont Ag Products | Delaware Technology Park, Suite 200/206 | 1 Innovation Way, PO BOX 6104 | Newark, DE 19714-6104 | Email: [EMAIL PROTECTED] Phone: (302)631-2608 Fax: (302)631-2607 ++ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: the edge of chaos
i see 2 things here, classic queing problem, and the fact that swapping to disk is 1000's of times slower than serving from ram. if you receive 100 requests per second but only have the ram to serve 99, then swapping to disc occurs which slows down the entire system. the next second comes and 100 new requests come in, plus the 1 you had in the queue that did not get serviced in the previous second. after a little while, your memory requirements start to soar, lots of swapping is occuring, and requests are coming in at a higher rate than can be serviced by an ever slowing machine. this leads to a rapid downward spiral. you must have enough ram to service all the apache processes that are allowed to run at one time. its been my experience that once swapping starts to occur, the whole thing is going to spiral downward very quickly. you either need to add more ram, to service that amount of apache processes that need to be running simultaneously, or you need to reduce MaxClients and let apache turn away requests. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ P.S. used your service several times with good results! (and no waiting) thanks! Justin wrote: I need more horsepower. Yes I'd agree with that ! However... which web solution would you prefer: A. (ideal) load equals horsepower: all requests serviced in =250ms load slightly more than horsepower: linear falloff in response time, as a function of % overload ..or.. B. (modperl+front end) load equals horsepower: all requests serviced in =250ms sustained load *slightly* more than horsepower site too slow to be usable by anyone, few seeing pages Don't all benchmarks (of disk, webservers, and so on), always continue increasing load well past optimal levels, to check there are no nasty surprises out there.. ? regards -justin On Thu, Jan 04, 2001 at 11:10:25AM -0500, Vivek Khera wrote: "J" == Justin [EMAIL PROTECTED] writes: J When things get slow on the back end, the front end can fill with J 120 *requests* .. all queued for the 20 available modperl slots.. J hence long queues for service, results in nobody getting anything, You simply don't have enough horsepower to serve your load, then. Your options are: get more RAM, get faster CPU, make your application smaller by sharing more code (pretty much whatever else is in the tuning docs), or split your load across multiple machines. If your front ends are doing nothing but buffering the pages for the mod_perl backends, then you probably need to lower the ratio of frontends to back ends from your 6 to 1 to something like 3 to 1. -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Vivek Khera, Ph.D.Khera Communications, Inc. Internet: [EMAIL PROTECTED] Rockville, MD +1-240-453-8497 AIM: vivekkhera Y!: vivek_khera http://www.khera.org/~vivek/ -- Justin Beech http://www.dslreports.com Phone:212-269-7052 x252 FAX inbox: 212-937-3800 mailto:[EMAIL PROTECTED] --- http://dslreports.com/contacts
Re: Undefined subroutine
it's telling you to search the guide at: http://perl.apache.org/guide/ check out in particular: http://thingy.kcilink.com/modperlguide/troubleshooting/Undefined_subroutine_Apache_RO.html Barry Veinotte wrote: Undefined subroutine Apache::ROOT::cgi_2dbin::ads1::ads_2epl::handler called at /usr/lib/perl5/site_perl/5.005/i386-linux/Apache/Registry.pm line 135. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: problems with make test, server not starting
try: make kill_httpd sleep 5 make test Richard wrote: the error log ~ [Thu Dec 28 21:33:14 2000] [crit] (98)Address already in use: make_sock: could not bind to port 8529 ~ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Apache Version 1.3.0 required, aborting...
___cliff rayman___ wrote: perhaps doug or someone with the proper authentication can s/authentication/authorization/ move the mod_perl-1.24 version into the old directory on: http://perl.apache.org/dist/ cpan looks like it is up to date and only shows the 1.24_01 version. Stas Bekman wrote: z BROKEN RECORD please get mod_perl-1.24_01.tar.gz /BROKEN RECORD -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Shopping Store design
here are a couple i know about - no personal experience however, i prefer homebrew :-)) http://www.zelerate.com/html/eng/home.shtml http://www.extropia.com/products.html The Doctor wrote: Needed : Perl programmes for a 'member' Shopping cart site that would do the following: Authenticate members Add new member using member IDs of greater than 1000 Authenticating Members The ability to shop The ability to ship The ability to search the site for products Order verification Order Completion Inventory ability and membership/non-membership management Would like to use a Perl/PHP based solution. Any suggestions? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Apache 1.3.14 build
you need version 1.24_01 to use apache 1.3.14 http://perl.apache.org/dist/mod_perl-1.24_01.tar.gz "Wang, Pin-Chieh" wrote: I am trying to build apache v.1.3.14 with Mod_perl v. 1.24 using APACI I am using Perl 5.6 build 620 - the latest I ran perl Makefile.PL under mod_perl-1.24 directory The system created Makefile in support,regex. directories but terminated prematually with warning message for "Apache Version 1.3.0 required, aborting.." -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: help!
check out the perl guide at: http://perl.apache.org/guide also, you can search through the mail archives at: http://www.geocrawler.com/lists/3/web/182/0/ you might have compiled as a DSO and not used the same compiler, or compiler parameters. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ "Yu, Ming" wrote: Hi, I am new to apache and new to this group. This could be a very easy question. But any help will be greatly appreciated. I compile apache 1.3.14 with mod_perl and mod_ssl, the installation process went ok, but I received this error message when I tried to start the apache server . Segmentation fault - core dumped. The server is running SPARC Solaris 8. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Problems on installation...
yes - in order to use apache 1.3.14 you need mod perl 1.24_01 which you can get from here: http://perl.apache.org/dist/ enjoy, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ don carnage wrote: Hello all -- I recently downloaded apache 1.3.14 and mod perl 1.24 and received the following error when I tried to run the Makefile.PL: - --snip-- cp apaci/mod_perl.exp ../apache_1.3.14/src/modules/perl/mod_perl.exp * WARNING * Apache Version 1.3.0 required, aborting. * WARNING - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Dealing with spiders
Robin Berjon wrote: But on a related issue, I got several logfiles corrupted because I log user-agents there and some seem to use some unicode names that confuse Apache and convert to \n. Does anyone else have this problem ? I don't think it could lead to server compromission, but it's never pleasant to have corrupted logs... if this is true, i would log an apache bug report. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: PerlRun StatInc perl5_00405
here is something that occurred to me, but it is untested, and could be plain foolish. place a file named warnings.pm in your 5_00405 include path that contains the infamous: 1; this may help to quiet StatInc. Chris Strom wrote: No, I don't have warnings.pm. It is only included in 5.6. We have no plans on upgrading at this time. The code snippet from PerlRun is a workaround for perl versions prior to the most recent release, but it appears to be causing problems with StatInc. perl -V reports: Summary of my perl5 (5.0 patchlevel 4 subversion 5) configuration: It may be that the combination of PerlRun/StatInc/perl5.6 simply will not work. If we were not using StatInc or were using perl 5.6, I do not believe that we would be having these problems. Unfortunately, our development environment would be rather painful without StatInc and, as I said, we have no plans on upgrading from 5_00405. For now, I've got the following hack in perl.conf: PerlModule Apache::StatINC # # hack to keep $INC{'warnings.pm'} defined. PerlRun includes a # workaround for perl5.6 which defines $INC{'warnings.pm'} and # ties the warnings::unimport function to an anonymous sub-routine. # PerlInitHandler "sub {delete $INC{'warnings.pm'}; $INC{'warnings.pm'='/usr/local/lib/perl/site_perl/Apache/PerlRun.pm';}" PerlInitHandler Apache::StatINC PerlSetVar StatINC_UndefOnReload On PerlSetVar StatINC_Debug 1 PerlWarn On PerlTaintCheck On It's not the prettiest thing, but it does what's needed. -Original Message- From: G.W. Haywood [mailto:[EMAIL PROTECTED]] Sent: Wednesday, November 08, 2000 3:00 PM To: Chris Strom Cc: [EMAIL PROTECTED] Subject: Re: PerlRun StatInc perl5_00405 Hi there, On Wed, 8 Nov 2000, Chris Strom wrote: The offending item in %INC appears to be the 'warnings.pm' entry defined on line 308 of PerlRun: BEGIN { if ($] 5.006) { $INC{'warnings.pm'} = __FILE__; *warnings::unimport = sub {}; } } Do you even have the file 'warnings.pm' if you're using 5.004_05? I have it in a 5.6.0 inststallation, but not in 5.005_03. That's why there's a test for Perl version less than 5.006 (== 5.6.0). What does Perl -V say? 73, Ged.. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Dealing with spiders
Bill Moseley wrote: But it's amazing how many are just lame in that they take perfectly good HREF tags and mess them up in the request. For example, every day I see many requests from Novell's BorderManager where they forgot to convert HTML entities in HREFs before making the request. Here's another example: 64.3.57.99 - "-" [04/Nov/2000:04:36:22 -0800] "GET /../../../ HTTP/1.0" 400 265 "-" "Microsoft Internet Explorer/4.40.426 (Windows 95)" 5740 i don't think u have a lame spider here. i think u have a hacker trying to hack your server. In the last day that IP has requested about 10,000 documents. Over half were 404 requests where some 404s were non-converted entities from HREFs, but most were just for documents that do not and have never existed on this site. Almost 1000 request were 400s (Bad Request like the example above). And I'd guess that's not really the correct user agent, either there is a current exploit for non-converted entities on Microsoft IIS. Maybe they're trying them out on your Apache for some reason. In general, what I'm interested in stopping are the thousands of requests for documents that just don't exist on the site. And to simply block the lame ones, since they are, well, lame. perhaps u can run a cron job that scans your logs. identify lame spiders and/or hackers and add a rule to IPChains (assuming linux 2.2.??) to deny access from that IP to your server. i understand that Portsentry does this trick when it determines that an IP is scanning for open ports. hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: how to really bang on a script?
"Christopher L. Everett" wrote: Hello All: I've written some mod_perl scripts that need testing over a million hits or so before I deploy it. I need to prove to myself and my marketing guy that my script has certain statistical properties, not the least of which is the question of whether my activity logs match what actually happened. Also, there's concurrency issues to make sure I've got right. snip sorry, but i fail to see why all the trickery is needed. i assume that you want to check the content against what is expected, but the banners are rotating based on some formula. if you know the formula before hand, then you know the expected distribution for the banners served. why not use something from libwww package to make the requests, md5 the returned banner relavant data, return a report which gives the counts for each unique md5. so in perl pseudocode (untested, no error checking, steps skipped): for $testnum (0..$number_to_test) { $request_url=@bannerurls[rand(@bannerurls)]; $req = HTTP::Request-new(GET = $request_url); $res=$ua-request($req); if($res-is_success){ $dig=md5($res-content); $md5{$dig}++; } $md5{__ERROR__}++; } } foreach $dig (keys %md5){ print "the banner with digest=$dig returned $md5{$dig} hits for",($md5{$dig}/$number_to_test)*100),"% of total\n"; } the report should print the distribution requested. not sure if this can be done using ab or the bench i believe Stas was working on, but libwww is easy to use. you can even distribute this test to a few of your friends and have them bang on your system from a variety of different places to test your system in a more realistic environment. then write a program to scour the logs for the test period, and produce the same report from the logs. they should match almost exactly. only differences in incompleted log requests etc.. 1) Is there a more elegant way of solving my problem? 2) Has this been done before? 2a) If so, is the source for that available? 2b) If not, is a tool like this useful for anyone else, so that I should build it better than I would a once-off? What would make it more useful? Thanks in advance for your help. --Christopher Everett [EMAIL PROTECTED] 641-472-4178 -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Apache trouble reading in large cookie contents
i'm not an expert with this, but, a quick grep for your error in the apache source (mine is still 1.3.9 ) and some digging yield: ./include/httpd.h:#define DEFAULT_LIMIT_REQUEST_FIELDSIZE 8190 so you're right, 8K is currently the apache limit. if you try to change this value in the source code, you will probably also have to muck with IOBUFSIZE and possibly other things as well. IOBUFSIZE is 8192 and the DEFAULT_LIMIT_REQUEST_FIELDSIZE is set to 2 bytes below that to make room for the extra \r\n after the last header. looks like you'll have to take responsibility for mucking with the apache source, or sending smaller cookies and using some other techniques such as HIDDEN fields. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ "Biggs, Jody" wrote: I'm having trouble when a browser sends a fair sized amount of data to Apache as cookies - say around 8k. Apache then complains (and fails the request) with a message of the sort: [date] [error] [client 1.2.3.4] request failed: error reading the headers I assume this is due to a compile time directive to Apache specifying the maximum size of a header line.
Re: Embeded perl question
embperl 'subs' do not return subroutine values. you need to either make a regular subroutine [- sub get_date { ... } -] or use a global variable for return values. such as @GLOBAL. kind of ugly - but is it any uglier than @_ for the input values? "Genocchio, Anthony" wrote: I am having trouble returing a variable from a sub?...below is my effort to do this...is there some fundamental place where i am going wrong and can you help me?!...thanks [$ sub get_date $] [- $var = shift; --snip--- $date = ($mday."-".$mth."-".$year); return[$date]; -] [+ $date +]BR [+ $var +]BR [$ endsub $] [- use DirHandle; -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: environment vars in apache
go to the guide: http://perl.apache.org/guide/ click on search type 'environment'. also try, ENV there are several examples which may answer your question. Pires Claudio wrote: sorry if thuis is a elementary question how can I assign a new environment var from mod_perl or change the value of a predefined apache environment var? thanks Claudio -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: $r-header_only question (feeling a newbie!)
doug, lincoln, looks like www.modperl.com needs a link to errata. martin, check out: http://www.ora.com/catalog/wrapmod/errata/wrapmod.699 martin langhoff wrote: Thanks Tim and all, for-the-record, I did check www.modperl.com looking for an errata. marks down for O'Reilly technical reviewers :p martin Tim Tompkins wrote: This should be an "if" instead of "unless" return OK if $r-header_only; header_only() will return true if the request method is HEAD. You'll want to simply return OK once you've gathered all the necessary outgoing headers for HEAD requests. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Strange error message: (offline mode: enter name=value pairs on standard input)
i think you'll find the answer here. http://www.geocrawler.com/archives/3/182/2000/5/0/3817939/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ MJ M wrote: Hello, I have recently made the following upgrade: apache-1.3.6 -- apache-1.3.12 perl-5.005_02 -- perl-5.6 mod_perl-1.18 -- mod_perl-1.24 Except this upgrade, nothing else was changed. Since then, I frequently get the following message in the Apache error log (this message never occured before the upgrade): (offline mode: enter name=value pairs on standard input)
Re: OT: Server-push client page reload
i think that this technique works with netscape but not with IE. on IE you have to set-up channels. Ime Smits wrote: | Plain old meta refreshes. Usually every 5 or 10 seconds or so. Perhaps | configurable on a user and/or server basis. You could make it even more smooth by doing a multipart document (aka server push): finishing a HTML document but not closing the HTTP connection and start a new document as soon as someone else drops a line. But that is a terrible thing to do in mod_perl, because each client will occupy an Apache process as long as he's connected. Writing a simple http daemon handling the chatbox on another port wouldn't be that complicated, and there are modules out there. Take a look at Apprentice, a realy slim httpd written in threaded perl, I'm sure it's somewhere on freshmeat. Ime -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Does the AxKit-devel mailing list have an archive?
Matt Sergeant wrote: Gzipped results to the browser, ripped straight from Apache::GzipChain: # AxKit::Debug(5, 'Getting Vary header'); # my @vary = $r-header_out('Vary') if $r-header_out('Vary'); # push @vary, "Accept-Encoding", "User-Agent"; # AxKit::Debug(5, 'Setting Vary header'); # $r-header_out('Vary', # join ", ", # @vary # ); excuse my ignorance, but for my own knowledge, what is the problem with this code? is it the "my @vary" with the "if" conditional?? -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Producing an error page
i may be coming in late here, so forgive me if this has been mentioned: use CGI::Carp qw(fatalsToBrowser); not sure if everything you want will be sent to the browser, but it is better than a standard 500 error, and you can read the errors from the log easier. -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ George Sanderson wrote: STDERR Opps got an error here or something. \STDERR I'm sure you would also want a submit (DEBUG) button which could generate the above, on-demand for form pages and such. (Kind of a DEBUG on demand option.) Is this what is being discussed here? (This is probably, not a mod_perl topic, but then again, it could be:-). At 12:04 PM 8/21/00 -0700, you wrote: The stuff that the server sends back comes from STDOUT if CGIs or within mod-perl, either $req-print or a regular print since it is tied. The error messages go to STDERR which apache redirects internalls so that the messages go to the error log. I don't know that it's possible and I'm certain it's not a good idea to try and circumvent that and send STDERR to the browser. And besides that, you'd still have to send content-type headers. == --snip-- How do I produce an error page (in HTML), when I call the script from a browser, that looks just like the error screen I get when I run a script at the command line? That is, if I run the following script from the command line: --- #!/usr/bin/perl -w use strict; use diagnostics; ($first, $second) = @ARGV; exit; --- I'll get a whole bunch of messages telling me I "use strict" and I have variables that I didn't define with "my". But, if I call it from my browser, I just get back a "Internal Server Error" page. Instead I want all the diagnostics messages. Thanks Jay Jay Strauss [EMAIL PROTECTED] (h) 773.935.5326 (c) 312.617.0264
Re: Chaining SSI and gzip
i think this is FAQ you are looking for: http://thingy.kcilink.com/modperlguide/modules/Apache_OutputChain_Chain_Sta.html -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ Rodent of Unusual Size wrote: This is probably a FAQ, in which case I'll accept my wet-noodle lashings and follow any links provided. I'm trying to help someone who wants to use server-side includes AND send the result gzip-encoded. Base Apache 1.3 can't do this, but I *think* this can be done with mod_perl and Apache::* modules (a mod_include emulator and a gzipper -- both of which exist, I'm sure), but a specific pointer to a recipe or an implementation example would be very welcome.. And of course this is a rush job, and it's the end of the day.. :-( Thanks for forbearance, friends.. -- #kenP-)} Ken Coarhttp://Golux.Com/coar/ Apache Software Foundation http://www.apache.org/ "Apache Server for Dummies" http://Apache-Server.Com/ "Apache Server Unleashed" http://ApacheUnleashed.Com/
Re: Apache Variables
2 main things to read for mod_perl apache: the guide: http://perl.apache.org/guide/ the book: http://www.oreilly.com/catalog/wrapmod/ -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/ good luck, [EMAIL PROTECTED] wrote: Let me start with "I'm new". If this is the wrong forum, let me know now and please direct me to the right place. I come from the Mac/Windows world. I'd like to know howm to check on the status of Apache via perl and what commands are possible to check on things like the listeners, DB connectivity. And if there are suggestions for places to read and learn, I'd appreciate them. Thanks in advance Russell Dobbins Verizon Wireless
Re: Apache::Upload buffering issues?
Ian Mahuron wrote: What is the proper way to take the filehandle provided by $upload-fh and write the file to disk? I seem to be having buffering issues w/ the following (file is truncated): if (open(OUTFILE, "$u_fullpath")) { print OUTFILE $buffer while read($fh, $buffer, 8*1024); } else { ... } a simple $| = 1; before the print didn't seem to help.. maybe OUTFILE is not hot? select((select(OUTFILE), $|++)[0]); #unbuffer OUTFILE and return select to prev state Dunno.. this is my first run in w/ buffering issues. I hope someone can help. i see u are not checking for errors on open. u should. u should also check for errors on close. if u get an error on close, then the file you are closing is probably not going to be written with all data. TIA Ian hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: Looking for info/docs
Derek Simkowiak wrote: 2) One webpage I've read says that mod_perl "compiles" (interprets) each Perl script only once, and then retains the compiled code in memory. Is that something that was custom-made for mod_perl, or is that a feature of using an embedded Perl interpreter? Can you point me to a file/line of code in mod_perl? a feature of an embedded perl interpreter. the application that loads the interpreter stays running. and in less it explicitly closes the interpreter, it stays running. unless the perl script is reloaded for some reason, the compiled code stays resident in the interpreter, which is resident in the embedding application. hth, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/
Re: [OT] mod_proxy tuning info?
have u read this yet? http://perl.apache.org/guide/scenario.html#mod_proxy Edward Moon wrote: I'm looking for docs or white papers on tuning apache/mod_proxy for optimum performance when acting as a reverse proxy for a web farm. Can anyone point me to a URL or a book that's a good reference? Thanks, -- ___cliff [EMAIL PROTECTED]http://www.genwax.com/