Of course, the second way is better for APISIX.

The `lua-geoip` is under Dual license, we need to confirm if we can use
this library.

The users needs to download the GeoIP database by himself, Apache APISIX can
not ship with the GeoIP data(under LGPL 2.1).


On Wed, Aug 5, 2020 at 9:16 PM Li Ling(Lien) <[email protected]> wrote:

> rencently I am thinking about have Geo routing in APISIX,
> scenario:
>     1、I want route user‘s request from country request intoto different
> upstream host.
>     2、When users from outside China redirect to international homepage(many
> video sites like youku.com they ban users from outside china).
>
>
> here is two solution I digged into:
>
> 1、intergrate nginx module https://github.com/leev/ngx_http_geoip2_module
> and
> do variable matching.
>      disadvantage: we need calculate the geo data from ip info for every
> request,which is so inefficient.
>
>
> 2、https://luarocks.org/modules/agladysh/lua-geoip
>      intergrate this lua module into lua-resty-radixtree, when geo_ip_*
> parameter is set in the routes, we calculate the ip country info from geoip
> library.so  that  it wont calculate the geo data for each request.
>


-- 

*MembPhis*
My GitHub: https://github.com/membphis
Apache APISIX: https://github.com/apache/incubator-apisix

Reply via email to