[users@httpd] SetEnvIf and mod_rewrite
Hi everyone, I need your help. I've been trying to check a header variable provided by top-level filter and proxy depending on it: SetEnvIf SERVERSESSIONID .+ AUTHENTICATED RewriteCond %{ENV:AUTHENTICATED} 1 RewriteRule ^/(.*) https://backend:7792/authenticated/$1 [P,L] ProxyPassReverse / https:// backend:7792/authenticated/ RewriteCond %{ENV:AUTHENTICATED} !1 RewriteRule ^/(.*) https:// backend:7792/unauthenticated/$1 [P,L] ProxyPassReverse / https:// backend:7792/unauthenticated/ But it's like mod_rewrite can't see the variable (in the rewrite log): applying pattern '^/(.*)' to uri '/' RewriteCond: input='' pattern='1' = not-matched applying pattern '^/(.*)' to uri '/' RewriteCond: input='' pattern='!1' = matched I saw one post http://turboflash.wordpress.com/2010/05/27/apache-environment-variables-visibility-with-setenv-setenvif-and-rewriterule-directives/ that said that sometimes variables aren't visible, but I don't really understand why. I think I'm missing something fundamental about how the httpd works. I'm using Apache 2.0.64 and the directives are in a virtual host. Cheers, Ryan
[users@httpd] libtool mangles run path
Hi everyone, I'm trying to work around an issue with the Solaris 9 gcc where it ignores the LD_RUN_PATH. To get my compile to work, I add my run path using -R to my CC variable before calling configure. This works in most cases. The problem is that when I subsequently try to add a module (mod_perl in this case), its libraries end up having a mixed-up run path. In particular, it ends up putting the HTTPD libraries last. This means that APR.so ends up pointing to my system libraries instead of the HTTPD libraries. Looking at libtool, I can see that it has some routines for trimming out duplicate libpaths. I can't figure out exactly what code is mangling it, but I'm wondering if anyone knows a workaround? Are there environment variables that libtool will pay attention to that I can use to force my runpath? Any other ideas? Cheers, Ryan
RE: [users@httpd] --enable-rule=SSL_EXPERIMENTAL in 2.0.64
Hi Igor and thanks for your response :-) I did find a solution by chance. I added CFLAGS=-m64 -mcpu=niagara2 -O3 -DSSL_EXPERIMENTAL -DSSL_ENGINE and now everything is happy. I am interested in what you said about the --with-included-apr. Is there some documentation that explains how to use these flags properly? I hate blindly copying what I see other people using. I'd rather get a better idea how to do it right. We're using 2.0.64 rather than 2.2.17 because this is a mass vhost environment and our clients expect 2.0 for now. We're working on a newer release, but we have to get all our clients to test and move them over one by one. Cheers, Ryan -Original Message- From: Igor Galić [mailto:i.ga...@brainsware.org] Sent: Wednesday, February 9, 2011 9:40 AM To: users@httpd.apache.org Subject: Re: [users@httpd] --enable-rule=SSL_EXPERIMENTAL in 2.0.64 - Original Message - Hi everyone, I'm trying to compile 2.0.64 on Solaris 10. Unfortunately, I get the message: First off: The latest and best version is currently: 2.2.17 configure: WARNING: unrecognized options: --enable-nonportable-atomics, --disable-ipv6, --enable-rule, --enable-lib64 These are probably all APR/APR-Util options, which you're not compiling. i.e.: There is *no* --with-included-apr in your configure. According to the posts I see, these are just warnings, but when I try to start I get: Invalid command 'SSLCryptoDevice', perhaps mis-spelled or defined by a module not included in the server configuration Is the module loaded? This worked in 2.0.63 no problem. Does anyone have a workaround for this issue? Any ideas, no matter how harebrained would be welcome :-) Details: sparc-sun-solaris2.10-gcc (GCC) 4.3.3 (20091210) (gccfss) CC=gcc -m64 -mcpu=niagara2 -O3 -R${GCCRT_DIR}/lib/sparcv9 -L${GCCRT_DIR}/lib/sparcv9 -R${OPENSSL_DIR}/lib -L${OPENSSL_DIR}/lib -R/usr/sfw/lib/64 -L/usr/sfw/lib/64 ./configure \ --with-mpm=worker \ --enable-nonportable-atomics=yes \ --disable-ipv6 \ --enable-unique-id=shared \ --enable-ssl=shared \ --enable-headers=shared \ --enable-rewrite=shared \ --enable-proxy=shared \ --prefix=${HTTPD_DIR} \ --enable-rule=SSL_EXPERIMENTAL \ --with-ssl=${OPENSSL_DIR} \ --enable-lib64 Regards, Ryan i -- Igor Galić Tel: +43 (0) 664 886 22 883 Mail: i.ga...@brainsware.org URL: http://brainsware.org/
[users@httpd] --enable-rule=SSL_EXPERIMENTAL in 2.0.64
Hi everyone, I'm trying to compile 2.0.64 on Solaris 10. Unfortunately, I get the message: configure: WARNING: unrecognized options: --enable-nonportable-atomics, --disable-ipv6, --enable-rule, --enable-lib64 According to the posts I see, these are just warnings, but when I try to start I get: Invalid command 'SSLCryptoDevice', perhaps mis-spelled or defined by a module not included in the server configuration This worked in 2.0.63 no problem. Does anyone have a workaround for this issue? Any ideas, no matter how harebrained would be welcome :-) Details: sparc-sun-solaris2.10-gcc (GCC) 4.3.3 (20091210) (gccfss) CC=gcc -m64 -mcpu=niagara2 -O3 -R${GCCRT_DIR}/lib/sparcv9 -L${GCCRT_DIR}/lib/sparcv9 -R${OPENSSL_DIR}/lib -L${OPENSSL_DIR}/lib -R/usr/sfw/lib/64 -L/usr/sfw/lib/64 ./configure \ --with-mpm=worker \ --enable-nonportable-atomics=yes \ --disable-ipv6 \ --enable-unique-id=shared \ --enable-ssl=shared \ --enable-headers=shared \ --enable-rewrite=shared \ --enable-proxy=shared \ --prefix=${HTTPD_DIR} \ --enable-rule=SSL_EXPERIMENTAL \ --with-ssl=${OPENSSL_DIR} \ --enable-lib64 Regards, Ryan - The official User-To-User support forum of the Apache HTTP Server Project. See URL:http://httpd.apache.org/userslist.html for more info. To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org from the digest: users-digest-unsubscr...@httpd.apache.org For additional commands, e-mail: users-h...@httpd.apache.org