2009-08-31 5 views
3

fecora 11, mod_wsgi2.5 및 apache2.2로 django를 설정했습니다. 그리고 나는 로컬에서 "python manage.py runserver"를 실행할 수 있습니다. 그것은 잘 작동합니다. 원격 브라우저에서 테스트 할 때 오류가 발생했습니다.django : ImportError myapp.views.hometest라는 모듈이 없습니다.

의견이나 제안에 감사드립니다.

답변

2

$PYTHONPATH에 Django 프로젝트가 포함 된 응용 프로그램이 있습니까 (파이썬이 서버 컨텍스트에서 호출 될 때)? 예를 들어 Django 프로젝트가 /home/wwwuser/web/myproj 인 경우 /home/wwwuser/web$PYTHONPATH에 있어야합니다. 웹 서버에서 호출 할 때 프로젝트를로드하는 스크립트에서이 값을 설정해야합니다.

+0

아파치에서의 httpd.conf에서 '['/user/local/django/myproject'+sys.path] 을 PYTHONPATH 넣어야? – icn

+0

아니면 django.wsgi에 뭔가 넣어야합니까? – icn

+1

는 이미 django.wsgi – icn

1

귀하의 앱이 PYTHONPATH에 있음을 명시 적으로 확인하지 않았다면 urls.py의보기를 myproject.myapp.views.functionname으로 지정해야합니다. 그렇지 않으면

:

  • 체크

    당신은 PYTHONPATH, 또는 무엇을 설정하는 경우. 프로젝트 디렉토리가 있어야합니다.
  • django 관리자를 활성화하면 (기본적으로 urls.py에있는 행의 주석 처리를 제거하여), 작동합니까?
+0

장고 관리자도 작동하지 ... – icn

1
  • 모든 필수 env 변수는 django.wsgi에 설정해야합니다. 당신은 django.wsgi에 선언 된 env와 ./manage runserver을 실행하는 env를 비교하고 그것들이 같은지 확인하십시오.
  • /usr/local/django/myapp 앞에 PYTHONPATH를 통해 찾을 수있는 또 다른 myapp 패키지가있는 경우 ImportError이 제기 될 수 있습니다.
4

방금이 문제가 발생했습니다. 내 .wsgi 파일에 sys.path.append('/path/to/project')을 추가하면 사라졌습니다.

관련 문제