有趣的比喻
我(client)去超市(server)买东西,因为我和超市老板有点误会,于是我派老婆去超市,她买到东西后交到我手上,交易达成。那么老婆就是我的代理,是站在我客户端这边的(这种情况下超市老板不知道实际上是要买东西的是我本人)。
什么是反向代理呢?我觉得上次误会小事一桩,于是我亲自去超市买东西,老板不愿见我,藏在幕后,他老婆出来接待,他老婆把我要的东西再告诉他,他找到后交给他老婆,他老婆又交给我,交易达成。那么他老婆对于我来说,就是反向代理。老板娘是站在服务端的(这种情况下我是不知道幕后流程的,也不需要知道,也可能是他老婆从别人那里拿到了我要的东西,总之东西到了我手上)
代理和反向代理当然也可以同时存在,我派我老婆去买东西,他派他老婆卖东西。那么我和他都隐藏在幕后,对方实际上都不知道对方的存在,也不需要知道。