본문 바로가기

웹 프로그래밍/Back-End

(8)
Let's Encrypt를 사용하여 Nginx에 SSL 적용하고 Django 실행 Ubuntu 에서 Let's Encrypt를 사용하여 Nginx에 SSL 적용하고 Django 실행 김피노님 블로그 : Ubuntu 18.04에서 Let's Encrypt를 사용하여 Nginx에 SSL을 적용하는 방법 를 참고하여 글을 작성했습니다. Let's Encrypt 무료 SSL/TLS 인증서를 얻고 설치할 수 있는 인증 기관. 웹 서버에서 암호화 된 HTTPS를 사용할 수 있게 해줍니다. Cerbot 이라는 자동화 클라이언트를 제공하여 Nginx에서 인증서를 획득하고 설치하는 전체 프로세스가 자동화 되어 있습니다. 환경 서버 : Ubuntu WAS : Nginx Front : Vue.js (https://daily-life-of-bsh.tistory.com/224) Back..
AWS EC2 / Ubuntu / Nginx 에서 Django 배포하기 AWS EC2, Ubuntu, Nginx 환경에서 Django 배포 제가 AWS에 처음 Django 를 배포하면서 얻은 경험을 정리하겠습니다. 저는 진행했던 프로젝트에서 Front는 Vue.js / Back은 Django를 썼습니다. https://daily-life-of-bsh.tistory.com/223 에 가시면 동일한 환경에서 Vue.js를 배포하는 법을 정리해놨습니다. 1. 키 접속 $ ssh -i /path/my-key-pair.pem ubungu@my-instance-public-dns-name 2. 접속 후에 기존 패키지 업데이트 $ sudo apt-get update 3. Python 관련 패키지 설치 $ sudo apt-get install python3-dev python3-venv ..
Django - SQL SQL과 django ORM 참고문서 Making queries | Django documentation | Django QuerySet API reference | Django documentation | Django Aggregation | Django documentation | Django 기본 준비 사항 Gitlab에서 프로젝트를 다운받으면 아래의 내용이 이미 반영되어 있습니다. django app django_extensions 설치 users app 생성 csv 파일에 맞춰 models.py 작성 및 migrate $ python manage.py sqlmigrate users 0001 db.sqlite3 활용 및 데이터 반영 sqlite3 실행 $ ls db.sqlite3 manage.py..
Django - CRUD Django CRUD 프로젝트 및 app 설정 1. 프로젝트 생성 2. 프로젝트 설정(settings.py) # django_crud/settings.py 3. app 생성(articles) app 이름은 일반적으로 복수형으로 구성된다. app 등록 urls.py 생성 Model 활용 1. model 정의 # django_crud/articles/models.py class Article(models.Model): title = models.CharField(max_length=140) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_no..
Django 기초 django 파이썬 웹 프레임워크 MTV 패턴 기초 내용 설치 $ pip install django==2.1.15 수업에서는 2.1.15 를 기준으로 진행 예정입니다. django 프로젝트 시작 프로젝트 생성 $ django-admin startproject {프로젝트명}서버실행 django_intro 폴더의 settings.py 파일에 아래와 같이 수정한다. # 28번째 라인 ALLOWED_HOSTS = ['*'] 반드시 서버 실행시 명령어가 실행되는 디렉토리를 확인할 것. ~/ $ cd django_intro/ ~/django_intro/ $ python manage.py runserver 8080 실행된 서버는 우측의 영역의 url을 클릭한다. ![Screen Shot 2020-03-..
Servlet Parameter 와 한글처리 Servlet Parameter - Form 태그의 submit 버튼을 클릭하여 데이터를 서버로 전송하면, 해당파일(Servlet)에서는 HttpServletRequest객체를 이용하여 Parameter값을 얻을 수 있다. 이름 : 아이디 : 비밀번호 : 취미 : 독서 요리 조깅 수영 취침 국어 영어 수학 디자인 http ftp smtp pop package com.javalec.ex; import java.io.IOException; import java.io.PrintWriter; import java.util.Arrays; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.ser..
Servlet 라이프사이클(생명주기), 선처리와 후처리 Servlet 라이프사이클 ( 생명주기 ), 선처리와 후처리 1. Servlet 객체 생성 -> 최초 한번 ▶ 선처리 : @PostConstruct 2. Init() 호출 -> 최초 한번 3. service(), doGet(), doPost() 호출 -> 요청시 매번 4. destroy() 호출 -> 마지막 한번 ( 자원 해제 : servlet 수정, 서버 재가동 ... ) ▶ 후처리 : @PreDestroy package com.javalec.ex; import java.io.IOException; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; import javax.servlet.ServletException; i..
web.xml 에 서블릿 맵핑 맵핑을 하는 이유는 URL 주소가 너무 길고, 보안에 노출되어 있는 경로를 간단하게 노출하기 위해서 입니다. 예를들어 기존 경로가 다음과 같을 때, 기존 경로 : http://localhost:8181/helloworld/servlet/com.javalec.ex.HelloWorld URL맵핑 경로 : http://localhost:8181/helloworld/HWorld 맵핑을 하기 위한 방법은 2가지가 있습니다. 1. web.xml 에 서블릿 맵핑 helloworld index.html index.htm index.jsp default.html default.htm default.jsp helloworld com.javalec.ex.HelloWorld helloworld /HWorld : 임의의 이름을..