Nginx Geoip模块和Simple Rotating banners Python脚本

时间:2013-09-15 06:08:38

标签: python nginx uwsgi bottle geoip

我们(朋友和我)有一个小型专用服务器,其中安装了nginx和geoip模块。 (它已正确安装) 在该服务器上,我们使用UWSGI和bottle运行一个简单的python脚本。 脚本旋转横幅。 (我们自己的自我宣传横幅)

我们使用此脚本显示我们在其他网站上拥有的网站横幅并进行轮播,以便用户看不到相同的横幅广告。

我们遇到了地理定位问题。

以下的pastebin显示了python脚本。

http://pastebin.com/PqQ6TQeN

PAISES = ['AR', 'MX', 'CL']表示Country_code。 TODOS是向所有国家/地区展示横幅的标记。

不同的列表适用于不同的横幅尺寸。 旋转横幅的URL就是这样。

exampleip / api / 300x250

这会调用300x250大小的模板,因此用户会在列表中看到该大小的随机横幅。

工作正常。 但地理定位不起作用。

在代码(pastebin链接)中,您可以看到300x250横幅只有阿根廷的“AR”代码,因此只有该国家/地区的用户才能看到这些广告。 但是,它们会继续显示其他IP。

添加后:

print('>>>>> ',request.headers.keys())
pais = request.get_header('GEOIP_CITY_COUNTRY_CODE')
print('=========== ' , pais, ' ==================')

(*注意:pais表示国家/地区)

通过SSH运行UWSGI进程它为None返回GEOIP_CITY_COUNTRY_CODE。 这意味着它没有将参数直接传递给python脚本。

Geoip模块已正确安装,但此脚本无法正常运行。

我需要修复它。

我确定这不是一件复杂的事情,我只是在代码中写错了。也许我没有将参数传递给uwsgi或python。

0 个答案:

没有答案