
DNS란 www.naver.com과 같은 url을 123.456.123.123 과 같은 ip주소로 바꿔주는 역할을 한다. DNS Query과정 웹 브라우저에 www.naver.com을 입력하면 먼저 Local DNS에게 "www.naver.com"이라는 hostname"에 대한 IP 주소를 질의하여 Local DNS에 없으면 다른 DNS name 서버 정보를 받음(Root DNS 정보 전달 받음) Root DNS 서버에 "www.naver.com" 질의 Root DNS 서버로 부터 "com 도메인"을 관리하는 TLD (Top-Level Domain) 이름 서버 정보 전달 받음 TLD에 "www.naver.com" 질의 TLD에서 "name.com" 관리하는 DNS 정보 전달 "naver.com" 도메인을..

로컬 파일을 강제로 덮어쓰기 하는 방법 현재 브랜치의 코드를 remote브랜치의 소스로 강제로 덮어쓰는 방법 로컬의 소스가 엉망일때 사용하기 좋다. git fetch --all git reset --hard origin/브랜치이름 커밋(commit) 취소하기 오직 커밋만 취소할때 git reset HEAD^ 푸쉬(push) 취소하기 원격 저장소에 저장된 코드를 취소하고 다른코드로 수정해서 올릴때 git reset HEAD^ # 코드 수정 -- git add git commit # ---------- git push -f # 다른 코드로 강제 푸시

BrowserWindow의 setSize 메서드가 window에서 동작하지 않는 현상. (mac은 정상동작) width와 height를 지정해줬음에도 불구하고 setSize가 먹히지 않는다. 기존 setSize(width, height)를 setBounds를 사용하는것으로 바꿔서 해결했다. BrowserWindow.setBounds({width : width, height : height}) https://github.com/electron/electron/issues/15560#issuecomment-451395078 setSize can't shrink non-resizable window (but can grow it) · Issue #15560 · electron/electron Output of..

자바스크립트에는 변수 선언을 세가지 키워드로 할 수 있습니다. var, let ,const let과 const는 자바스크립트 ES6 이후에 등장한 문법입니다. 💡 변수는 다음 3단계를 통해 생성된다. 선언단계 → 초기화 단계 → 할당 단계 선언단계 : 변수를 변수 객체에 등록 초기화 단계 : 객체에 등록된 변수를 위한 공간을 메모리에 확보한다. (초기화 단계에서 변수는 undefined로 초기화) 할당 단계 : undefined로 초기화된 변수에 실제 값을 할당한다. var는 변수 선언시 선언과 초기화 단계가 한번에 이루어집니다. let과 const는 변수 선언시 선언만 이루어집니다. 호이스팅 (Hoisting) hoist : 감아 올리기 호이스팅은 변수 선언이 어디에 있든 상관없이 다른 코드보다 먼저 ..
구성 환경 → Microsoft Azure 가상머신 → Ubuntu 18.04.5 LTS → nginx/1.14.0 (Ubuntu) Let's encrypt git 프로젝트 복사 git clone let's encrypt 프로젝트로 이동 cd letsencrypt let’s encrypt 실행 sudo ./letsencrypt-auto certonly --manual --email [이메일 주소] -d [사용할 도메인주소] 여기까지 정상적으로 진행시 Create a file containing just this data: 해시값 And make it available on your web server at this URL: 위와같은 메시지가 뜨는데, 도메인뒤에 /.well-konown ~ 과 같은 경로에..

django의 모델을 model.objects.get을 사용해서 불러올시에 다음과 같이 예외처리를 해줄 수 있습니다. model.DoesNotExist try: user = User.objects.get(pk=1337) car = Car.objects.get(pk=13) except User.DoesNotExist: logging.error("User does not exist") except Car.DoesNotExtist: logging.error("Car does not exist") 각 모델마다 DoesNotExist를 호출해서 나눠서 확인이 가능합니다. ObjectDoesNotExist from django.core.exceptions import ObjectDoesNotExist try: us..

만약 도메인이 www.domain1.com 에서 www.domain2.com로 변경 되었고, www.domain1.com, www.domain2.com 도메인을 모두 소유하고 있을 경우 domain1을 domain2로의 리다이렉트를 nginx에서 처리하는 방법 입니다. nginx에서 주소를 바꿔주도록 설정 해주면 된다. server { listen 443; server_name 도메인1; return 301 도메인2$request_uri; } 위와 같이 301코드와 함께 도메인2로 리턴을 하면 파라미터까지 추가해서 보낼 수 있다. ex) www.naver.com/hihi→ www.daum.net/hihi 그러나 도메인1로 post요청을 보내면 308 permanent redirect 이라는 메시지와 함께..
트레일링 슬래시가 있으면 해당 리소스를 디렉토리로 간주한다. 트레일링 슬래시가 없으면 해당 리소스를 파일로 간주한다. 1. 트레일링 슬래시가 없는 URL 트레일링 슬래시가 없는 URL을 요청할 때, 서버는 해당 리소스를 우선 파일로 간주합니다. 서버의 처리 동작은 다음과 같습니다: 해당 이름의 파일이 존재하는지를 먼저 확인합니다. 없을 경우, 해당 이름의 디렉토리를 확인합니다. 디렉토리가 있으면, 그 안의 기본 파일(기본값은 index.html이죠)을 확인합니다. 2. 트레일링 슬래시가 있는 URL 트레일링 슬래시가 있는 URL을 요청할 때, 서버는 해당 리소스를 우선 디렉토리로 간주합니다. 서버의 처리 동작은 다음과 같습니다: 해당 이름의 디렉토리를 확인합니다. 디렉토리가 있으면, 그 안의 기본 파일(..
- Total
- Today
- Yesterday
- 소프트웨어 장인
- sql lite
- 프로그래머스
- 방금그곡
- 문자열 뒤집기
- conTeXt
- for-else
- leetcode
- 팰린드롬수
- stdout
- query
- 파이썬
- gunicorn
- Python
- 의대 신경학 강의
- django
- go context
- go
- ManyToMany
- taggit
- 독후감
- Two Scoops of Django
- 백준
- dfs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |