nginxgeoip模块和一个简单的旋转横幅Python脚本

2024-10-01 22:35:25 发布

您现在位置:Python中文网/ 问答频道 /正文

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

我们使用这个脚本来显示我们在其他网站上拥有的网站横幅,并旋转它们,这样用户就不会总是看到相同的横幅。在

我们的地理定位有问题。在

下面的pastebin显示了python脚本。在

http://pastebin.com/PqQ6TQeN

PAISES = ['AR', 'MX', 'CL']表示国家代码。 TODOS是向所有国家显示横幅的标签。在

不同的列表针对不同的横幅尺寸。 旋转横幅的URL如下所示。在

示例IP/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。在


Tags: 模块代码用户定位服务器脚本列表网站

热门问题