Re: mod_rewrite: remembering environment variables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



iptables redirects to the VirtualHost which rewrites to the script housed on localhost. The script does some processing then "re-requests" the original request based on the parameters and query string passed to it.

google.com will display just fine except for the logo image which gets re-written to http://10.0.255.1/intl/en_ALL/images/logo.gif

If I add a third rule, "RewriteRule (.*) http://www.google.com$1 [P]", the image is fetched appropriately. The question is how do I dynamically determine what the appropriate HTTP_HOST should be?

Is my approach "fixable"? Or should I be attacking this differently?

Listen *:10000
<VirtualHost *:10000>
    RewriteEngine on
    RewriteCond %{SERVER_NAME}          !^10\.0\.255\.1$
    RewriteRule (.*)                                 "http://10.0.255.1/cgi-bin/script.pl?%{SERVER_NAME}%{REQUEST_URI}&" [QSA,L]        
    RewriteCond %{REQUEST_URI}            !script\.pl   
    RewriteRule ^/cgi-bin/(.*)$         "http://$1?" [P]
</VirtualHost>
ProxyRequests On
<Proxy *>
 Order deny,allow
 Deny from all
 Allow from 10.0.255.0/24
</Proxy>


On 11/30/06, Joshua Slive <joshua@xxxxxxxx > wrote:
On 11/30/06, A. K. <ak21201@xxxxxxxxx > wrote:
> The mod_rewrite doc mentions that the E=VAR:VAL flag "[can be used] to strip
> but remember information from URLs".
>
> What exactly does that mean?
>
> I need to "remember" the values of certain EV's after a rewrite process has
> completed. It would be particluarly useful to me know what the original
> HTTP_HOST was as requests come through for content referenced by relative
> paths on the original host but the HTTP_HOST has already been rewritten.
>
> Could I use SetEnv to create an EV called ORIGINAL_HOST and then set it to
> the value of HTTP_HOST prior to rewrites so that I can reference it during
> subsequent rewrites?
>
> What would be the best method for accomplishing this? Or am I totally off
> the mark regarding what SetEnv and E=VAR:VAL do?

You need to provide some details on your configuration, because the
answer changes depending on whether you are using internal rewriting
(aliasing), external rewriting (redirecting) or proxying.

Joshua.

---------------------------------------------------------------------
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-unsubscribe@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux