我最近在数字海洋服务器(ubuntu)上部署了一个 Django 项目。我正在使用 Nginx 并使用 Let encrypt 保护连接。这是我的问题:我能够使用 python 魔法来验证上传(在开发过程中),但它似乎并没有在生产服务器上运行。这是我的表单验证:
class PostForm(forms.ModelForm):
def clean_sound(self):
file = self.cleaned_data.get('sound',False)
mime = magic.from_buffer(file.read(), mime=True)
print(mime)
if not mime == 'audio/mpeg':
raise forms.ValidationError('File must be mp3')
else:
return file
class Meta:
model = Places
fields = [
'usersave',
'title',
'longitude',
'latitude',
'sound',
]
所以是的,它在开发服务器上工作得很好,但每次在生产服务器上都会抛出“文件必须是 mp3”验证错误。即使它是正确的文件类型。是什么赋予了?