使用Apache + mod_wsgi的网页内容过滤器?
我想写一个简单的网页内容过滤器,过滤规则可以灵活设置,使用Python编写。这个过滤器将作为一个前向代理使用。
现在,我在选择合适的工具上遇到了困难。你觉得哪些工具比较好呢?到目前为止,我考虑过使用Apache HTTP服务器,配合mod_proxy和mod_python或者mod_wsgi,但在设置上遇到了麻烦(我觉得mod_python的文档写得很差)。
顺便说一下,我知道并且有使用过现有的内容过滤器,比如squid和dansguardian。我想自己写一个,因为这些内容过滤器的过滤能力对我来说不够复杂。
1 个回答
1
你可以使用 Django 的中间件来拦截 HTTP 请求和响应,这样在这些请求和响应到达你的应用程序之前(在这个例子中可能是你的图形界面,用来调整你的过滤器和/或数据库处理,以存储你的配置或预设规则)。
我想象你的应用程序会有一个网页界面,方便你配置和调整系统,把这些配置和规则存储在数据库里。在中间件里,你可以写一些代码,读取数据库中的配置和规则,然后应用到进出的流量上。
我更喜欢这种方式,而不是直接在 Django 的应用程序(视图)里处理这些。
你还可以在中间件脚本里加入各种日志记录和监控功能,当然别忘了启用这些功能,让它们能正常工作 :-)。