2009-12-06 7 views
4

Django로 웹 응용 프로그램을 만들고 localhost (http://127.0.0.1:8000/)에서 실행하고 있습니다. 제 질문은 Mac OS X의 웹 공유 등을 사용하여 전 세계 사람들이 어떻게 사용할 수있게 할 수 있습니까? ?Mac OS X 웹 공유 및 Django

감사합니다.

답변

3

먼저 은 Mac에서 웹 사이트를 제공하지 말 것을 제안합니다. 정말 나쁜 아이디어입니다. Mac OS X 웹 공유와 Django에 포함 된 http 서버 (여러분이 사용하고 있다고 가정)는 테스트 목적으로 만 사용되었습니다. 속도, 보안 등에 관한 여러 가지 이유가 있습니다. 솔직히 여기에 게시하기에는 너무 길다. (그러나 나는 누군가를 바란다.)

두 번째로, 이미 세계에 열려있다. 루프백 127.0.0.1 대신에 누구나 컴퓨터에 연결할 수있다. 'NAT라고 부름). 다시 한 번 테스트 해보면 (친구/동료/상사에게) 임시로을 테스트하는 데 유용하지만 프로덕션 용도로는 적합하지 않습니다. 정말.

+0

왜 OSX 웹 공유가 좋지 않습니까? - 아파치입니다 – Mark

+0

django에서 포함 된 HTTP 서버는 좋지 않습니다? 대체품은 무엇입니까? – Johannes

+0

Johannes, Django ** 개발 ** 서버는 개발 용이며 이는 * documentation *에서 강조되어 있습니다. 프로덕션 배포 방법은 http://docs.djangoproject.com/en/dev/howto/deployment/#howto-deployment-index를 참조하십시오. –

12

당신은 서버가 공용 IP를 지정하거나 모든 IP에 대한 0.0.0.0

예 사용을 시작하는 동안 : 당신은 단지 루프백 IP 및 포트의 결합하지 않고 응용 프로그램을 시작하면

sudo python manage.py runserver 0.0.0.0:80

을 127.0.0.1이며 네트워크에서 액세스 할 수 없습니다.

0

당신의 진정한 목적이 무엇인지, "세계에 사용할 수 있는지 ..."또는 무엇인가에 따라 달라집니다. 웹에서 영구적으로 액세스 할 수 있도록하려면 공유 또는 전용으로 서버에 호스팅해야합니다. Mac을 계속 켜 놓지는 않습니까? :)

공유 호스팅에서 Django 호스팅 - Django 프로젝트 설정에 대한 단계별 자습서는 스크린 캐스트와 포럼에서 찾을 수 있습니다 (기본 계획은 월 9.50 $, 두 달 실제로 작동하는 돈을 돌려주는 보증은 나 자신을 시험해 보았다. Djangofriendly.com

전용 서버의 경우 전체 서버 (OS, 웹 서버, 데이터베이스 서버, memcache, 방화벽, 백업 ...)를 직접 관리하는 것이 좋습니다. 대답이 "예"인 경우 Linode, Rackspace 또는 Slicehost 또는 심지어 을 확인하십시오. 그러나 더 비싸고 더 복잡하지만 궁극적 인 유연성을 제공합니다. 시도 할 준비가되면 this is one of the best tutorials i've found in net for a given subject.

"웹 브라우저에서 액세스 할 수있는 것이면 어디서나 액세스 할 수 있어야합니다"라는 개념 증명이 필요한 경우 사설 IP 주소를 제공 받았는지 ISP에 문의하십시오. 그렇지 않다면, 흠, 위에서 언급 한 옵션들에 대해 더 잘 해보십시오 :) 만약 그렇다면 whatismyipaddress.com을 방문하여 어떤 IP인지 알아보십시오. Prashanth가 제안한대로 웹 서버를 시작하고 브라우저에 whatismyip.org의 IP 주소를 입력하십시오. 아무것도 얻지 못하니? a) MacOSx의 방화벽을 끄십시오. 아직도 아무것도? b) 라우터를 사용하지 않고 ISP가 제공하는 이더넷 케이블에 Mac을 직접 연결하십시오. 브라우저에 ouside IP를 다시 입력하십시오. 공장? 좋아, go google "포트 포워딩", 이것은 라우터가 사용 중일 때 동일한 효과를 가지도록 라우터를 구성해야한다는 것을 알려줍니다. 안 그래요? stackoverflow에서 별도의 질문을하고 최대한 많이 할 수있는 일에 대해 자세하게 설명하십시오.

네트워크상의 컴퓨터에 도달하기 위해 패킷이 올바르게 라우팅되지 않으면 Mac OS X에서 웹 공유가 제대로 작동하지 않습니다. 내가 할 수있는 일은 아파치를 시작하고 방화벽의 일부 포트를 여는 것 뿐이다.그러나 개인용 라우터 나 ISP가 외부 패킷을 컴퓨터에 전달하지 않으면 원하는 것을 얻을 수 없습니다.

행운을 빈다.