과제 정보 요약
구현 기간 : 21.11.18(18시) ~ 21.11.21 (22시)
자세한 내용은 Github 참고
"next": "http://Django-도커컨테이너명/researches?cursor=bz0xMDA%3D",
"previous": null,
"results": [
{
},
서버구성은 사용자 <-> nginx <-> Django
이렇게 구성되어 있는데, 먼가 nginx의 설정을 빼먹은 느낌이였으나, 찾지를 못하였습니다.
(기존 nginx 설정)
upstream Django-도커컨테이너명 {
ip_hash;
server Django-도커컨테이너명:8000; # 서버의 컨테이너 명
}
server {
location / {
proxy_set_header Host $http_host;
proxy_pass http://Django-도커컨테이너명/;
}
location /static {
alias /static;
}
listen 8051;
server_name localhost;
}
이 현상을 proxy_set_header Host $http_host
를 추가해서 정상적인 url이 출력되도록 하였다.
server {
location / {
proxy_set_header Host $http_host;
}
}
간략하게 설명하면 nginx에서 Django쪽으로 요청을 전달할때, nginx에서 받은 HOST명으로 세팅을 하는 것이라고 생각하면 될 것 같습니다.
기존에는 nginx에서 Django쪽으로 요청을 전달할때, Django-도커컨테이너명 주소로 전달하기 때문에 발생한 현상이였던 것 같습니다.
current_pos = Point(126.9990125, 37.4803512703)
Area.objects.filter(id=id,area_boundary__contains=current_pos).exist()
from django.db.models.functions import ACos, Cos, Radians, Sin
from decimal import Decimal
lat = Decimal( 37.50666558612068)
lng = Decimal(126.72242597890687)
Parkingzone.objects.filter(radius__gte=6371*ACos(Cos(Radians(lat))*Cos(Radians('center_lat'))*Cos(Radians('center_lng')-Radians(lng))+Sin(Radians(lat))*Sin(Radians('center_lat')))*1000).exsist()
current_pos = Point(126.9990125, 37.4803512703)
ForbiddenArea.objects.filter(forbidden_area_boundary__contains=current_pos).exist()
# 퀵보드를 빌린 지역
area = Area.objects.get(id=id)
# 반납위치
lat = Decimal( 37.50666558612068)
lng = Decimal(126.72242597890687)
# 위경도 좌표계에서 utmk 좌표계로 변환 (2차원 좌표계라고 생각하면 편함)
# 이유는 distance가 linear 하게 계산되기 때문 (구형 계산 안함)
point = Point(lng, lat, srid=4326).transform(5179, True)
polygon = area.area_boundary.transform(5179, True)
distance_m = polygon.distance(point) # 직선거리 미터