2014-02-07 1 views
0

우리 사용자는 herokuapp.com이라는 이름의 도메인을 통해 장고 게임을 직접 플레이합니다. 우리는 http를 통해 자산을 요청합니다.페이스 북을 통해 게임을 플레이 할 때 https를 사용하는 방법 및 다른 도메인에서 플레이 할 때 http를 사용하는 방법

페이스 북에 게임을 추가하고 싶습니다. https를 사용해야합니다. Heroku이 처리 할 수 ​​있습니다.

https 요청 사용 : Google 게임은 페이스 북에서 작동하지만 Google의 이름이 지정된 도메인을 통해 액세스 할 때 애셋을로드하지 못합니다.

도메인에서 재생할 때 facebook 및 http를 통해 재생할 때 https를 사용하도록 설정할 수 있습니까? settings.py에 추가해야하는 코드는 무엇입니까?

우리는 settings.py에이 코드를 시도했지만 작동하지 않았다

옵션 1 :

import socket 
if socket.gethostname().startswith('app'): 
    LIVEHOST = True 
else: 
    LIVEHOST = False 

if LIVEHOST: 
    STATIC_URL = "https://d******1.cloudfront.net/" 
else: 
    STATIC_URL = "http://d******1.cloudfront.net/" 

옵션 2 :

import socket 
if socket.gethostname().startswith('edge'): 
    LIVEHOST = True 
else: 
    LIVEHOST = False 

if LIVEHOST: 
    STATIC_URL = "https://d******1.cloudfront.net/" 
else: 
    STATIC_URL = "http://d******1.cloudfront.net/" 
+0

설정을'// d ****** 1.cloudfront.net /'로 사용할 수 없습니까? – karthikr

+0

karthik, 해답의 주인. 예 프로토콜 상대 URL을 사용합니다. –

+0

내가 어떻게이 간단한 일을 시도하지 않았는지 모르겠다. @karthikr 답변으로 게시하여 받아 들일 수 있습니다. – Sascuash

답변

1

당신은 protocol relative urls을 사용할 수 있습니다 사용할 프로토콜에 대해 걱정할 필요가 없습니다.

그래서 설정과 같습니다

STATIC_URL = "//d******1.cloudfront.net/" 

하고 안전하게 코드에있는 모든 계산 로직을 제거 할 수 있습니다.

관련 문제