通过IIS部署的Django项目,上传头像总是500 (Internal Server Error)失败
相关设置
#上传目录
Myblog\media\avatar,配置了django媒体目录,配置了IIS_IUSRS文件夹权限
#应用池设置
集成托管、LocalSystem标识
#model相关字段
avatar = ProcessedImageField(upload_to='avatar',default='avatar/default.png',verbose_name='头像',
processors=[ResizeToFill(100, 100)], # 处理后的图像大小
format='JPEG', # 处理后的图片格式
options={'quality': 95} # 处理后的图片质量
)
#重写User的save()方法保存上传的头像目录
def save(self, *args, **kwargs):
# 当用户更改头像的时候,avatar.name = '文件名',其他情况下avatar.name = 'upload_to/文件名'
if len(self.avatar.name.split('/')) == 1:
self.avatar.name = self.username + '/' + self.avatar.name
#调用父类的save()方法后,avatar.name就变成了'upload_to/用户名/文件名'
super(User, self).save()
通过服务器本地测试、python manage.py runserver后通过外网IP访问都可以上传成功,但通过IIS部署后访问就上传失败。小白刚接触IIS,困扰很久求大佬帮忙。网站地址
1,应用程序池“启用32位应用程序改成true
2,进程模型-标识,改成LocalSystem