이 질문은 다른 사람들이이 문제에 대한 해결책을보다 쉽게 찾을 수 있도록 retitled/retagged되었습니다.플래시 기반 파일 업로드 (swfupload)가 Apache/mod-wsgi와 함께 실패합니다.
나는 아파치/모드 - WSGI 환경에 장고 개발 서버에서 프로젝트를 마이그레이션하려고 노력하는 과정에서입니다. 어제 나에게 물었다면 전환이 매우 원활하게 진행되고 있다고 말했을 것이다. 내 사이트는 접속 가능하고 빠르며 등등입니다. 그러나 사이트의 일부분은 파일 업로드에 의존하고 있으며,이 중 가장 이상하고 가장 큰 문제를 겪고 있습니다. 문제의 특정 페이지는 파일을 포착하고 서버 측 처리를 시작하는 url에 파일 및 관련 메타 데이터를 POST하기 위해 swfupload을 사용합니다. 이것은 개발 서버에서 완벽하게 작동하지만 Apache에서이 URL을 POST 할 때 장고 요청 객체는 비어 있습니다. GET, POST 또는 FILES 데이터가 없습니다.
Wireshark로 스누핑하여 클라이언트 측 문제를 제거했습니다. 내가 알 수있는 한 근본적인 원인은 일종의 아파치 설정 문제에서 비롯된 것인데, 아마도 액세스하려는 임시 파일 디렉토리와 관련이있을 것이다. 필자는 Apache 구성에 대해 상대적으로 신참이며 몇 시간 동안 내 머리를 두드리는 소리가났습니다.
내 아파치 설정 :
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName sitename.com
ServerAlias www.sitename.com
LogLevel warn
WSGIDaemonProcess sitename processes=2 maximum-requests=500 threads=1
WSGIProcessGroup sitename
WSGIScriptAlias//home/user/src/sitename/apache/django.wsgi
Alias /static /home/user/src/sitename/static
Alias /media /usr/share/python-support/python-django/django/contrib/admin/media
</VirtualHost>
내 직감이 내가 내 장고 settings.py ('/home/sk/src/sitename/uploads/'
)에서 지정한 파일 업로드 디렉토리의 권한으로 할 수있는 뭔가가있을 수 있다는 것입니다, 그러나 내 아파치 오류 log는 디버깅을 위해 로그 레벨이 올라간다 할지라도 정렬의 어떤 것도 제안하지 않습니다.
디버깅 방법에 대한 제안 사항은 무엇입니까?
이미지와 관련된 장고 설정은 어떻습니까? 장고 쪽에서 어떻게 처리합니까? – stefanB
http://www.oluyede.org/blog/2007/03/18/django-image-uploading-validation-and-newforms/ (오래된 것일 수도 있음) http://scottbarnham.com/blog/2007/07/31/upload-images-to-a-django/ – stefanB
흠,이 링크의 관련성을 잘 모르겠습니다. 나는 실제로 이미지를 올리는 사용자가 전혀 없다. 적어도 아바타 같은 의미는 아니다. 또한, swfupload를 사용하고 있기 때문에 Django에 내장 된 파일 업로드 처리 (MEDIA_PATH, FileField 등)를 사용하지 않습니다. 내 파일은 최종 저장소 저장소로 전송되기 전에 임시 디렉토리에서 사후 처리됩니다. – bouvard