django clad是与clad(clamav守护进程)的django集成。
django-clamd的Python项目详细描述
此项目集成了python clad和django,以便在上载时轻松扫描文件中的病毒
安装
>;来自具有pip的pypi:
pip install django-clamd
或
easy_install django-clamd
您还可以直接从github安装开发版本:
pip install git+https://github.com/vstoykov/django-clamd.git
如果你想翻译工作,你需要添加到已安装的应用程序。
INSTALLED_APPS=(...'django_clamd',...)
用法
您可以在表单中使用它:
fromdjangoimportformsfromdjango_clamd.validatorsimportvalidate_file_infectionclassUploadForm(forms.Form):upload_file=forms.FileField(validators=[validate_file_infection])
或者您可以直接将其作为验证程序添加到您的模型中:
fromdjango.dbimportmodelsfromdjango_clamd.validatorsimportvalidate_file_infectionclassFileModel(models.Model):document=models.FileField(validators=[validate_file_infection])
您将在django admin中自动扫描上传的文件 以及为该模型创建modelform时。
配置
默认情况下,django-clamd
会尝试使用智能和良好的默认值。
您仍然可以配置如何连接到clad。默认值为:
CLAMD_SOCKET='/var/run/clamav/clamd.ctl'CLAMD_USE_TCP=FalseCLAMD_TCP_SOCKET=3310CLAMD_TCP_ADDR='127.0.0.1'
注意:当您在fedora或centos上运行并且clamav-scanner
安装包,则CLAMD_SOCKET
的默认值为:
CLAMD_SOCKET='/var/run/clamd.scan/clamd.sock'
您还可以使用以下命令禁用病毒扫描以进行开发:
CLAMD_ENABLED=False
注意:这主要是为了方便在没有 在开发机器上安装夹具的需要。
许可证
django clad是在lgpl许可下作为开源软件发布的。