2013-05-31 8 views
1
나는이에 대한 매우 간단한 해결책이있다 같은데요

에로드되지 않습니다,하지만 난 모든 포럼 및 설정 가이드를 검색하고 그것을 알아낼 수 없습니다 : 지역 장고 웹 사이트는 브라우저

내가 장고 /에 CentOS를 구축 -6.3 환경에서 내 로컬 서버 (VirtualBox 및 Vagrant 사용). 'python manage.py runserver [::] : 8000'으로 불량 터미널에서 서버를 시작할 때 오류없이 시작됩니다. 내 브라우저에서 ' http://127.0.0.1:8001'로 이동하려고 할 때

Validating models... 

0 errors found 
May 31, 2013 - 13:56:15 
Django version 1.5.1, using settings 'mysitename.settings' 
Development server is running at http://[::]:8000/ 
Quit the server with CONTROL-C. 

그러나, 시간이 초과 할 때까지, 브라우저가 단 5 분 동안 중단 (내 Vagrantfile에서 포트 8001에 포트 8000에서 포트 포워딩을 설정) 다음 메시지를 반환합니다.

> The connection was reset 
> The connection to the server was reset while the page was loading. 
> ... 

로컬 서버를 종료 한 후에도 브라우저에서 얻은 메시지와 완전히 같습니다. 내 컴퓨터는이 포트를 전달 된 포트로 인식합니다. 다른 포트 (예 : 8000)가 즉시 127.0.0.1:8000의 서버에 연결할 수 없다는 오류를 반환하기 때문입니다.

서버 파일과 관련하여 과거에 장고/우분투에서 비슷한 설정을 많이 했었지만 전혀 문제가 없었지만 Django/CentOS와 다른 점이있을 것입니다. 내 서버 파일 중 하나에 실수로 사람을 만들었습니다.) 나는 CentOS에서 Django & PostgreSQL을 설정하는 가이드를 따라 갔지만 아무 소용이 없습니다. 아래에서 작성/편집 한 파일 중 일부에 대해 설명하겠습니다.

아무도 해결책이 있거나 을 (를) 시작하는 위치에 대한 조언이 있다면 정말 고맙게 생각합니다.

+0

여기에 희망 현재 문제의 원인을 밝혀 도움이 될 수 있습니다 내가했던 몇 가지 테스트와 함께, 내가 확인 서버 파일/편집 : - 'django.wsgi'(프로젝트 위의 디렉토리에) - 파이썬 터미널 에서 '수입 장고'테스트 - - 다시 시작 아파치와 방랑 - 파일을 만든 '/ 등/아파치/conf의'/etc/httpd/conf.d은 '('wsgi.conf ') 이 포함되어 있습니다. d/django.conf '에 추가하고 WSGIScriptAlias ​​라인을 추가했습니다. -이 8 줄에'/etc/httpd/conf/httpd.conf '에 추가되었습니다. (docs.djangoproject.com/en/1.5/howto/deployment/wsgi/modwsgi/# 기본 설정) - 아파치와 MySQL을 다시 시작 – jball037

+0

'python manage.py runserver [: :] : 8001'? – karthikr

+0

그 중 하나가 작동하지 않습니다 - 동일한 결과. 덕분에 – jball037

답변

3

나는 대답을 쓰고 있는데 왜냐하면 어떤 이유로 나는 논평 할 수 없다.

나는 정확히 같은 문제가 있습니다. 문제로드 페이지 127.0.0.1:8000

그러나 나를 위해, 응용 프로그램은 0.0.0.0:8000에서 실행됩니다.

4

호스트의 "127.0.0.1"은 게스트의 "127.0.0.1"과 다릅니다. 기본값은 다음과 같습니다.

python manage.py runserver 

은 게스트의 로컬 호스트 만 수신합니다. 당신은 VM 내에서 테스트 할 수 있습니다 (로그인 "방랑 SSH를"사용) 및

curl -I http://127.0.0.1:8000/ 

다른 IP로 호스트를 실행해야합니다. 호스트에서 개발 서버에 액세스하려면 IP 제한없이 시작해야합니다 :

python manage.py runserver 0.0.0.0:8000 

예 :

python manage.py runserver [::]:8000 

가 동일해야합니다. 하지만 그것은 IPv6 구문 AFAIK입니다. "manage.py runserver"명령이 기본적으로 IPv6을 지원하는지 확인 하시겠습니까? 나는 dvango를 사용하여 ipv6 주소를 사용한 적이 없지만 소스 (https://github.com/django/django/blob/master/django/core/management/commands/runserver.py)를 보면 이음새가 False ("- ipv6")의 기본값이되는 플래그가됩니다. 아마 이것이 "진짜"문제일까요?

감사합니다, 비슷한 문제를 들어

1

,

이 명령은

python manage.py runserver [::]:8001 
0

당신의 iptables을 확인하고 그것을 중지 나를 위해 마법처럼 일했다. 우분투는 시작할 때 일반적으로 iptables를 열지 않습니다.

네트워크가 올바르게 구성되어있는 경우
3

파이썬 manage.py의 경우 runserver와 장고 응용 프로그램 0.0.0.0:8000

당신은 여전히 ​​VM 호스트에서 장고 응용 프로그램에 액세스 할 수있는 거의있다 확실히 방화벽 문제. 위의 해결책은 iptables를 실행하는 경우에 좋습니다.

Windows 7 호스트에서 VirtualBox VM에 CentOS 7을 배포했습니다. 나는이 배포판이 액세스 제어에 iptables가 아닌 firewalld를 사용한다는 것을 몰랐다. |

추신 -ae

경우

(602)와 같은 그렙 방화벽

반환 무엇인가? 00:00:00 firewalld

시스템에 iptables가 아닌 firewalld가 실행 중입니다. 그들은 함께 뛰지 않는다. 당신이 명령을 사용하여 호스트에서 장고 사이트에 액세스 할 수 있도록

는 당신에게 VM를 해결하려면 :

의 방화벽-cmd를 --zone = 공공 --add 포트 = 8000/TCP를 --permanent

방화벽 cmd를 포스트 "가상 머신에 액세스 장고 서버"이 지적에 대한 절 파블로하는

많은 감사를 --reload.

+0

. 정말 도움이되었습니다. ++ – gordon33

관련 문제