我正在尝试配置一个病毒扫描代理服务器,专门用于扫描正在上传的文件。扫描正在下载的文件似乎是常见的用例,而且似乎有很好的记录。
我不是鱿鱼或 i-cap 专家,我使用来自以下指南的信息:
http://www.server-world.info/en/note?os=Ubuntu_11.04&p=clamav http://squidclamav.darold.net/installv6.html
A/V 代理在文件下载时工作正常,但在文件上传时无法正常工作。 我错过了什么?
这是来自 squid.conf 的 i-cap 配置:
icap_enable on
icap_send_client_ip on
icap_send_client_username on
icap_client_username_encode off
icap_client_username_header X-Authenticated-User
icap_preview_enable on
icap_preview_size 1024
icap_service service_req reqmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav
adaptation_access service_req allow all
icap_service service_resp respmod_precache bypass=1 icap://127.0.0.1:1344/squidclamav
adaptation_access service_resp allow all
如果我可以提供任何其他信息来帮助彻底解决这个问题,请告诉我。
答案1
我认为这是 c-icap 的一个限制。参考有点老了,但是 c-icap 的主要开发人员说:
这与 POST 请求中数据的编码方式有关。当 POST 请求包含多部分表单数据时,它将无法正常工作。
这意味着 c-icap 无法很好地支持上传。似乎您唯一的选择是使用另一个 ICAP 服务器替换 c-icap,但根据我的研究,似乎所有其他服务器都相当老旧或被废弃了。