Re: get the incoming TCP protocol type
André Warnier <[email protected]>
| Newsgroups | gmane.comp.apache.mod-perl |
|---|---|
| Message-ID | <[email protected]> |
Torsten Förtsch wrote: > On 11/24/2012 08:11 PM, Fred Moyer wrote: >> On Sat, Nov 24, 2012 at 7:58 AM, André Warnier <[email protected]> wrote: >>>> Inside a mod_perl2 request handler, how can I find out if the current >>>> request was received via HTTP or HTTPS ? >> Torsten is the author of this module, so he can explain it in more >> detail, but it looks like it can do part of what you need: >> >> https://metacpan.org/module/Apache2::ModSSL > > That is, of course, what I would use. If I recall correctly, the module > was written to have access to the SSL related information *prior to* the > response phase. If you need it only in the response phase you can have > mod_ssl export almost all of the stuff accessible via Apache2::ModSSL as > environment variables accessible via $r->subprocess_env. > I'm in the Fixup phase. Hmm. C:\develop\06_SVN\AP2lib\trunk\modlib\PROXY>ppm search Apache2::ModSSL Downloading ActiveState Package Repository packlist...done Updating ActiveState Package Repository database...done Downloading bribes-5.12 packlist...not modified Downloading trouchelle-5.12 packlist...not modified Downloading winnipeg-5.12 packlist...not modified Downloading wxperl packlist...not modified *** no packages matching 'Apache2::ModSSL' found *** No Win32 port available for that, I guess. (We work mostly (whenever we can get away with it, essentially) on Linux servers, but try to keep our solutions portable to Windows too, since we occasionally have clients that insist on it.) Building it on Windows from the tar.gz doesn't seem to work either, as it appears to require gcc (and probably a lot of other things not available on my XP laptop). However, the real target system this time is Linux, and it's kind of one-of-a-kind for now, so let's try : root@arthur:~# apt-cache search apache2 | grep SSL libapache2-mod-log-sql-ssl - Use SQL to store/write your apache queries logs - SSL extension libapache2-mod-gnutls - Apache module for SSL and TLS encryption with GnuTLS Hmm, no handy Debian package. So, the hard way : .... GOT /root/.cpan/sources/authors/id/O/OP/OPI/CHECKSUMS.tmp8430 Checksum for /root/.cpan/sources/authors/id/O/OP/OPI/Apache2-ModSSL-0.08.tar.gz ok CPAN: Archive::Tar loaded ok (v1.88) Apache2-ModSSL-0.08/ Apache2-ModSSL-0.08/t/ Apache2-ModSSL-0.08/t/conf/ Apache2-ModSSL-0.08/t/conf/localhost.cert Apache2-ModSSL-0.08/t/conf/extra.conf.in Apache2-ModSSL-0.08/t/TestSSL/ Apache2-ModSSL-0.08/t/TestSSL/is_https.pm Apache2-ModSSL-0.08/t/TestSSL/lookup.pm Apache2-ModSSL-0.08/t/2lookup.t Apache2-ModSSL-0.08/t/1is_https.t Apache2-ModSSL-0.08/t/TEST.PL Apache2-ModSSL-0.08/META.yml Apache2-ModSSL-0.08/Changes Apache2-ModSSL-0.08/perl-Apache2-ModSSL.spec Apache2-ModSSL-0.08/MANIFEST Apache2-ModSSL-0.08/Makefile.PL Apache2-ModSSL-0.08/lib/ Apache2-ModSSL-0.08/lib/Apache2/ Apache2-ModSSL-0.08/lib/Apache2/ModSSL.pm Apache2-ModSSL-0.08/README Apache2-ModSSL-0.08/mk_README.sh Apache2-ModSSL-0.08/ModSSL.xs CPAN: File::Temp loaded ok (v0.22) CPAN.pm: Going to build O/OP/OPI/Apache2-ModSSL-0.08.tar.gz Could not figure out which apxs to use. Try the -apxs option. Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site] OPI/Apache2-ModSSL-0.08.tar.gz /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK Running make test Make had some problems, won't test Running make install Make had some problems, won't install root@arthur:~# Ok, I'm a bit rusty about building from CPAN. This is Linux Debian : root@arthur:~# uname -a Linux arthur 2.6.32-5-686 #1 SMP Mon Mar 26 05:20:33 UTC 2012 i686 GNU/Linux Perl is : root@arthur:~# perl -vv This is perl, v5.10.1 (*) built for i486-linux-gnu-thread-multi (with 56 registered patches, see perl -V for more detail) Apache httpd is : [Mon Nov 12 15:01:23 2012] [notice] Apache/2.2.16 (Debian) DAV/2 SVN/1.6.12 mod_jk/1.2.30 PHP/5.3.3-7+squeeze8 with Suhosin-Patch mod_ssl/2.2.16 OpenSSL/0.9.8o mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations But I do not find an "apxs" anywhere. Do I need to install some "dev" package to get it ? root@arthur:~# apt-cache search apache2 | grep dev apache2-prefork-dev - Apache development headers - non-threaded MPM apache2-threaded-dev - Apache development headers - threaded MPM libapache2-mod-perl2-dev - Integration of perl with the Apache2 web server - development files ?