Forum Discussion
jonm_62062
Nimbostratus
Jan 07, 2011ProxyPass iRule, Version 8.2 usage
I'm trying to implement ProxyPass iRule, Version 8.2 so I can remove apache from a server . The apache code does nothing accept 'proxypass' to another app on the same server . Here is the proxy pass statement in the httpd.conf file
ProxyPass /LogToolDEV/ http://localhost:8080/
Currently the user connects to this app using a url like this
https://some.server.something/LogToolDEV
The bigip terminates the ssl and I currently have a simple irule that looks for the 'LogToolDEV' and changes the pool to 'test' (port 80) on which apache is listening .
This works fine.
So it seems as though I can bypass apache all together with the ProxyPass irule . I
have tried various combinations in the irule data group , here are 2
/LogToolDEV/ http://192.168.12.96:8080/ test8080
/LogToolDEV/ / test8080
the pool test8080 point to the server , port 8080
I have verified the existence of pool 'test8080' but irule debug shows
Jan 7 10:34:04 tmm tmm[1667]: Rule ProxyPasscnedev : some_virtualname, Host=some.server.something, URI=/LogToolDEV/: Found Rule, Client Host=some.server.something, Client Path=/LogToolDEV, Server Host=some.server.something, Server Path=
Jan 7 10:34:04 tmm tmm[1667]: 01220001:3: TCL error: ProxyPasscnedev - no such pool Failed Tcl_pool_GetFromObj: pool (line 201) invoked from within "pool $newpool"
What am I missing ?
19 Replies
- hoolio
Cirrostratus
newpool is set from the 3rd field of the datagroup:
set newpool [getfield $ppass " " 3]
It looks like you're getting the destination URI instead of the pool. Can you confirm your datagroup is set up with < source URI > < target URI > < pool >?
Aaron - Chris_Miller
Altostratus
Apparently my post didn't make it in.
What's your datagroup look like? - jonm_62062
Nimbostratus
see the out put of my ppass display log entry - jonm_62062
Nimbostratus
Jan 7 13:13:47 tmm tmm[1667]: Rule ProxyPass : ppass is set to /LogToolDEV/ / test8080
Jan 7 13:13:47 tmm tmm[1667]: Rule ProxyPass : clientside is set to /LogToolDEV/
Jan 7 13:13:47 tmm tmm[1667]: Rule ProxyPass : serverside is set to /
Jan 7 13:13:47 tmm tmm[1667]: Rule ProxyPass : newpool is set to
hmmm - Chris_Miller
Altostratus
Weird, another one of my posts didn't make it in.
What's your datagroup entry look like for the above?
From the logs, it looks like: /LogToolDEV/ / - jonm_62062
Nimbostratus
as the log shows the datagroup which gets stored in ppass looks like
/LogToolDEV/ / test8080
If I go into the code and do
set ppass "/LogToolDEV/ / test8080"
not only does the error go away but the irule seems to work - Chris_Miller
Altostratus
So, you're trying to do the following?
Clientside - /LogToolDEV/
Serverside - /
Pool - test8080
Correct?
Can you try /LogToolDEV without the trailing / ? - jonm_62062
Nimbostratus
now I cant get any log output at all . So I'll have to figure out what I've done - jonm_62062
Nimbostratus
well I'm not sure what I learned from this exercise . The issue with the missing variables seems to have gone away . perhaps I had multiple spaces between the fields ?
Anyway thanks for the help . The irule still doesnt do what I what I want . I think I have a basic misunderstanding of what the result of the apache directive
ProxyPass /LogToolDEV/ http://localhost:8080/
is
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects
