2012-09-15 2 views
3

매우 간단한 질문 일 수 있다고 생각하지만 python/django를 사용하여 코드 작성을 배우려고합니다. 따라서 가족 용 간단한 블로그 사이트를 구축하고 내 사이트를 배포 할 수 없습니다. Hostmonster에. 내가 가까워지고 있다고 생각하지만, 나는 다음과 같은 오류와 붙어 : 내 공유 Hostmonster이 계정에 등 파이썬, 장고를로드하는 방법을 알아내는 시간의 무리를 보냈다 FastCGI를 사용하여 Hostmonster에 장고 프로젝트 배포하기

Using the URLconf defined in newproject.urls, Django tried these URL patterns, in this order: ^admin/ The current URL, , didn't match any of these.`

및 생각 내가 장군, 수정되지 않은 장고 newproject을로드하고 django를 얻었을 때 나는 모두 그것을 알아 냈다. "It worked!" 화면에 표시되지만 urls.py 및 settings.py의 줄에서 주석을 제거하면 admin 모듈을 활성화하는 즉시 위의 오류가 발생합니다. 여기

.htaccess 파일입니다

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$ 
RewriteCond %{REQUEST_URI} !^/mysite/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /mysite/$1 
RewriteCond %{HTTP_HOST} ^(www.)?mysite.com$ 
RewriteRule ^(/)?$ /mysite/jarr.fcgi [QSA,L] 

여기 내 jarr.fcgi 파일입니다 : "그것은했다"

#!/home3/usr/python/bin/python 
import sys, os 
sys.path.insert(0, "/home3/usr/django/django_projects/newproject") 
sys.path.insert(0, "/home3/usr/python") 
sys.path.insert(0, "/home3/usr/python/lib") 
sys.path.insert(0, "/home3/usr/python/lib/python2.7") 
sys.path.insert(0, "/home3/usr/python/lib/python2.7/site-packages") 
sys.path.insert(0, "/home3/usr/django/django_src") 
os.environ['DJANGO_SETTINGS_MODULE'] = "newproject.settings" 
from django.core.servers.fastcgi import runfastcgi 
runfastcgi(method="threaded", daemonize="false") 

마지막으로는 얻을 그래서 좌절 몇 주간의 작업 후에도 내 hostmonster 계정에서 보냈지 만 관리자가 실제 사이트를 구축하는 것을 허용 할 수 없기 때문에 내 로컬 시스템에서 쉽게 사용할 수 있습니다. 모든 조언은 매우 감사하겠습니다.

+0

해결 방법을 찾으셨습니까? 나는 godaddy 공유 호스팅과 동일한 문제에 직면하고있다 : http://stackoverflow.com/questions/14310086/django-on-shared-hosting-setup-issue-404-for-the-admin-url-urls-py-being - 서명자 – alok

답변

1

참고 오류 메시지 :

The current URL, , didn't match any of these.` 

이 장고는 어떤 URI 정보를 얻고 있지 의미합니다. 그 이유는이 라인 다음 fcgi 스크립트가 호출되도록 할 수있는 유일한 일이 "인덱스"를 방문중인

RewriteRule ^(/)?$ mysite/jarr.fcgi [QSA,L] 

주, 심지어 다음에는 URI 정보는 제공되지 않습니다. 당신은 당신의 RewriteRule

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ mysite/jarr.fcgi/$1 [QSA,L] 

같은 일을 할 것입니다

도메인의 공개 "루트"로 jarr.fgci 이동하십시오 (중요한 역할을하는 것은 /$1가) (즉,하지 mysite 이하) 및 귀하의 규칙을 다음과 같이 변경하십시오 :

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ jarr.fcgi/$1 [QSA,L] 

아파치가 직접 제공하는 디렉토리에 파일을 저장할 수 있습니다.

관련 문제