Hi,
I have a web cluster and use mod_rewrite to forward request to cluster,
according with type of request.
There is a external program in directive RewriteMap to classify requests.
My external program:
...
while(1) {
fscanf(stdin, "%s", input); // read input ---> format = /1, or /2, /3
...
sscanf(strchr(input,'/') + 1, "%d", &number); // extract only number
of format
switch(number) {
case 1: fputs("192.168.1.11", stdout); break;
case 2: fputs("192.168.1.22"); break;
default: fprintf(stdout, "/bad_url"); break;
}
fputc('\n', stdout);
fflush(stdout);
------------------------------------------------
My http.conf:
RewriteEngine on
RewriteLog /usr/local/apache2/logs/rewrite_log
RewriteLogLevel 5
RewriteLock /usr/local/apache2/logs/file.lock
RewriteMap prgmap prg:/usr/local/apache2/admControl
RewriteCond ${prgmap:$1} !=/bad_url
RewriteRule ^/(.*) http://${prgmap:$1}/ [P]
RewriteRule ^(.*) - [F]
My problem is, don't proxy request to cluster. See log file:
(2) init rewrite engine with requested uri /1
(3) applying pattern '^/(.*)' to uri '/1'
(5) map lookup OK: map=prgmap key=1 -> val=
(4) RewriteCond: input='' pattern='!=/bad_url' => matched
(5) map lookup OK: map=prgmap key=1 -> val=
(2) rewrite '/1' -> 'http:///'
(2) forcing proxy-throughput with http:///
(1) go-ahead with proxy request proxy:http:/// [OK]
What's happen ??? Why mod_rewrite doesn't proxy requests to ip address ???
Thank you
Ricardo
--
View this message in context:
http://www.nabble.com/Rewrite-doesn%27t-work-%21%21-tp23743331p23743331.html
Sent from the Apache HTTP Server - Users mailing list archive at Nabble.com.
---------------------------------------------------------------------
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: [email protected]
" from the digest: [email protected]
For additional commands, e-mail: [email protected]