In our app,we have make the cross domain ajax request,and we have no control on the server domain which does not support jsonp,so we try to use the proxy.
We have a proxy.ashx on our server,and try to get the data through this proxy.
So in this case I think our server is the front server to the client,isn't it?
However our server is deployed in the internal network which use the reverse proxy.
Say I make a requset:
http://ourserver/proxy.ashx?url=http://crossdomainserver¶=xxx.
Then the reverse proxy forward this requst to our server,but our
server have no access to the internet,that's to say,our server can not
access http://crossdomainserver here.
So I want to know if you guys have met the same suitation,and how to solve it?
Hi...
I saw the picture but don't see any problem for nginx there, your
problem in that picture seems to be that you want your backend to
access crossdomain server but your backend do not have internet acces.
If that's the case, and you don't need to support thousands of cross
domains, you can configure Nginx to be reverse proxy of cross domain
server and use it to access internet from your backend, so when the
backends want to access crossdomain, it does so through nginx and
nginx indeed have internet access.
One good thing of doing this is that if you are already parsing with
any tool your logs, you will have nice stats of your crossdomain
servers behaviors (eg: backend generation time, etc)
Or maybe I got it all wrong, in that case, please discard this message :)
--
On Wed, Mar 28, 2012 at 8:16 AM, maven apache <apache...@gmail.com> wrote:
> Since I am not good at English,so I make a picture in the attach,hope you
> can get it.
>
>
> 2012/3/28 Francis Daly <fra...@daoine.org>
>>
>> On Tue, Mar 27, 2012 at 07:43:22PM +0800, maven apache wrote:
>>
>> Hi there,
>>
>> I don't understand your intended data flow.
>>
>> Can you describe it more explicitly?
>>
>> In general terms, "something" makes a http request to nginx; that
>> "something" is "the client". nginx is configured to proxy_pass a request
>> related to the original one to a back-end server; that back-end server is
>> "upstream".
>>
>> client talks to nginx, and gets a response from nginx. The client doesn't
>> know or care about upstream.
>>
>> nginx talks to upstream and gets a response from upstream. nginx doesn't
>> know or care how upstream generates the response.
>>
>> If a web browser is configured to use a proxy server, then as far as nginx
>> is concerned, that proxy server is "the client", not the web browser.
>>
>> From your description, it sounds like "some javascript running in the
>> browser" is "the client".
>>
>> It's not clear (to me) what is "nginx" and what is "upstream".
>>
>> If you can explain more, it might help others to answer your question.
>>
>> f
>> --
>> Francis Daly fra...@daoine.org
>>
>> _______________________________________________
>> nginx mailing list
>> ng...@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx
>
>
>
> _______________________________________________
> nginx mailing list
> ng...@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
Guzmán Brasó Núñez
Senior Perl Developer / Sysadmin
Web: http://guzman.braso.info
Mobile: +598 98 674020
_______________________________________________
nginx mailing list
ng...@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
You need to tell nginx it should accept requests for the different
cross-domain FQDNs you're using, and proxy_pass them in nginx as
appropriate.
Then arrange for your app to make its requests to nginx, not the
unreachable cross-domain server.
You may need to hosts-file the FQDNs on your app server if you can't
change the app and make it separate its understanding of the HTTP Host
header ("cross.domain.whatever.com") from the actual IP it should talk
(nginx).
It's a pretty simple setup.
We *could* write the nginx config to do this for you, but we'd be
depriving you of the excellent learning experience you'll get doing it
yourself ;-)
Have fun!
Jonathan