2011-05-09 2 views
4

최근 아파치에서 django 및 mod_wsgi를 사용하고 있습니다.500 인터넷 서버 오류 error_log : TemplateSyntaxError : 렌더링 중에 가져온 오류 가져 오기 : 친구가 아닌 모듈

내가 웹 페이지에있는 다음 단계를 수행입니다 :

"다음 내/mnt 아래/www가 /에서 응용 프로그램의 내 사이트 미디어 디렉토리에 생성 된 호출 내 사이트, 아파치의 이름과, ​​그리고이 작업을 수행 다음 "다음과 같이

이 apache_django_wsgi.conf 파일을 작성

Alias ​​/ site_media// mnt/www/mysite/media/

<Directory /mnt/www/mysite/media> 
Order allow, deny 
Options Indexes 
Allow from all 
IndexOptions FancyIndexing 
</ Directory> 

Alias ​​/ media// usr/local/lib/python2.5/site-packages/django/contrib/admin/media/

<Directory /usr/local/lib/python2.5/site-packages/django/contrib/admin/media> 
Order allow, deny 
Options Indexes 
Allow from all 
IndexOptions FancyIndexing 
</ Directory> 

WSGIScriptAlias ​​//mnt/www/mysite/apache/django.wsgi 

<Directory /mnt/www/mysite> 
Order deny, allow 
Allow from all 
</ Directory> 

<Directory /mnt/www/mysite/apache> 
Allow from all 
</ Directory> 

이 django.wsgi 파일을 만들려면 다음과 같이 :

import os, sys 

# Calculate the path based on the location of the WSGI script. 

apache_configuration = os.path.dirname (__file__) 

project = os.path.dirname (apache_configuration) 

workspace = os.path.dirname (project) 

sys.path.append (workspace) 

os.environ ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' 

os.environ ['PYTHON_EGG_CACHE'] = '/ tmp' 

import django.core.handlers.wsgi 

application = django.core.handlers.wsgi.WSGIHandler() 

print>> sys.stderr, sys.path 

나는이 단계를 밟았지만 브라우저를 통해 아파치에서 실행할 때 500 인터넷 서버 오류가 발생합니다. 그런 다음 erro_log를 확인합니다 : "TemplateSyntaxError : 렌더링 도중 가져온 오류 : 모듈이 친구가 아닙니다"(친구들은 내 모듈 중 하나의 이름 임)

내 사이트의 경로는/var/BigPrject/mysite

입니다.
+0

이 별칭/site_media /을/mnt/www /에서 내 사이트 /의 공간 위치 : 내가 추측하고

, 당신은 wsgi 파일에 다음 줄을 추가하여, 당신의 사건을이를 해결할 수 미디어/의도? 또는해야합니다 : 별칭/site_media// mnt/www/mysite/media /? apache_django_wsgi.conf의 다른 경로와 동일 –

+0

별칭/site_media// mnt/www/mysite/media/ – Newbie

답변

6

프로젝트 폴더가 파이썬 경로에없는 것을 제외하면 모든 것이 나에게 좋을 것 같습니다.

콘솔로 이동하여 import friends으로 시도하여 유효성을 검사 할 수 있습니다.

sys.path.append (project) 
+0

죄송합니다.이 문제를 해결해야합니다. Friends는 mystie의 응용 프로그램 파일입니다. 그리고 나는 mysite 디렉토리에있을 때만 파이썬 셸에서 친구를 가져올 수 있습니다. 내 wsgi 파일의 코드를 파이썬 쉘에 줄 단위로 입력 해 봅니다. 첫 번째 줄에는 작동하지 않습니다. 오류 마사지는 다음과 같습니다. 추적 (가장 최근에 마지막으로 호출) : 파일 "", 줄 1, NameError : name __file__이 정의되지 않았습니다. – Newbie

+0

Lakshman : 정말 고마워요! 이제 작동합니다. – Newbie

+0

초보자, 환영합니다. :) –