Take this pac file:
$ curl http://wpad.wws.lan/wpad.dat
function FindProxyForURL(url, host)
{
    // simple hostname
    if (dnsDomainLevels(host) == 0) {return "DIRECT";}

    // match Host against local domains (w/ optional :port)
    var dom = /(127\.\d+\.\d+\.\d+|\.wws\.lan\.?|\.local\.?)(:\d+)?/;
    if(dom.test(host)) { return "DIRECT"; }

    // All other requests go through port 8080 of proxy
    // should that fail to respond, go direct:
    return "PROXY proxy.wws.lan:8080; DIRECT";
}

Obviously the browser needs to evaluate the URL each time it wants to make
an http request. So I want to do that in my proxy.

Currently proxy chaning in mod_proxy supports only say:
ProxyRemote * x.y.z.w

Now not having found mod_proxy can help me in that, I thought about writing
a mod that in apache would interpret a pac file. In my configuration, the
browser can not be aware of the pac file, only my proxy.

I tried to explain you what was my project doing, instead of asking how
override the connection to a server.

if this is not a subject of interest of this group, I do apologize for
having misunderstood the aim of it. However I still don't understand why
this should be offtopic.

Giovanni

PS: I couldn't figure out a way to search into archives from
http://mail-archives.apache.org/mod_mbox/httpd-modules-dev/. I used google
"site:" option, and found no entry for "pac" or wpad.



On Jan 22, 2008 6:20 PM, Joe Lewis <[EMAIL PROTECTED]> wrote:

> First, I want to apologize for keeping this off-topic conversation one
> last time on the mailing list.  I think if we allow this to be archived,
> any questions should be more easily answered using archives, hopefully
> reducing our work load.
>
>
> Giovanni Donelli wrote:
> > Hi
> >    Thanks for your reply. I do apologize for not being clear. I will
> > try to restate what I want to achieve. For the sake of this discussion
> > allow me to simplify the browser/internet interaction as follows:
> >
> > User enters URL in browser ->  **browser resolves domain name** ->
> > connect to server x -> HTTP request....
> >
> > In the way the browser **resolves** the DNS is where the pac file is
> used.
>
> You may want to read and understand the specification first.  Remember
> that browsers do not reconfigure each time a page is hit - they obtain
> the configuration once (via a direct URL to a .pac, a DHCP response, or
> a DNS lookup for a wpad hostname - it's in the spec).
>
> The only time in those activities that apache could be involved is in
> the direct URL to a .pac file - and it's a static .pac file you drop on
> the web server, or serve the proxy.dat file that the DHCP specified or
> the DNS method is trying to find.  In any way, nothing according to
> apache is occurring that is dynamic - it's just serving a .pac or .dat
> file.
>
> Which means there is no need to set up an apache module that handles
> stuff like this unless you are really crazy and want to construct a
> dynamically generated .pac/.dat file (I would not suggest this).
>
> If that is the direction you want to go, we may be able to assist -
> however, I doubt that is what you want.  Most proxy servers have static
> IP addresses, which means the .pac/.dat file should be static as well.
>
> Once again, may apologies to those who are expecting module development
> assistance in this as we're not sure we even need it yet.
>
> Joe
> --
> Joseph Lewis <http://sharktooth.org/>
> "Divide the fire, and you will sooner put it out." - Publius Syrus
>

Reply via email to