2024/08 3

[CS] .env 파일 유출 문제와 해결 방안

1. 발생 문제2. 해결 과정3. 추가 문제 발생 및 해결 과정 1. 발생 문제CampusMeet 프로젝트를 진행하면서 형상관리는 GitHub를 통해 이루어졌고, 저장소는 public으로 관리하고 있었습니다. 개발 도중 GitHub를 확인하던 중, .env 파일이 그대로 저장소에 노출된 것을 발견했습니다. 다행히 초반이었고 파일에는 로컬 DB에 대한 간단한 정보만 담겨 있었지만, 이후에는 API 키나 비밀번호 등 민감한 정보들이 다뤄질 예정이었기 때문에, 이를 미리 해결하기로 했습니다. 2. 해결 과정1 ) .env 파일 제거 및 .gitignore 설정먼저, .env 파일이 앞으로 푸시되지 않도록 .gitignore 파일에 추가해줍니다. echo ".env" >> .gitignore 명령어를 입력하면 ..

CampusMeet 2024.08.28

[Backend] FastAPI

프로젝트의 백엔드를 FastAPI로 구성하기로 했지만, 실전에 들어가 보니 FastAPI가 상대적으로 덜 대중적이다 보니 자료를 찾기가 쉽지 않고, 디렉토리 구조를 어떻게 잡아야 할지 감이 잘 오지 않았습니다. 그래서 "https://github.com/fastapi/full-stack-fastapi-template"를 참고하여 디렉토리 구조를 작성해보았습니다. 오늘은 이 디렉토리 구조의 각 부분이 어떤 역할을 하는지 간단하게 정리하도록 하겠습니다.1. 디렉토리 구조 시각화2. 디렉토리 구조별 역할1. 디렉토리 구조 시각화디렉토리 구조를 작성했지만, 막상 만들어보니 헷갈리는 부분이 많고 한눈에 들어오지 않아서 구조를 한눈에 보면서 각 디렉토리별 역할을 정리해보기로 했습니다. 외부 사이트를 이용할까 했는데..

CampusMeet 2024.08.14

[Crawling] Crawling 을 통한 데이터 수집

프로젝트에서 지도를 통해 학교 주변의 가게 정보와 자취방 정보를 함께 제공하려고 합니다. 그러나 이러한 정보는 공공 데이터에서 제공되지 않으며, 별도의 API도 존재하지 않습니다. 따라서 이번 기회를 활용해 직접 크롤링을 통해 데이터를 수집하려고 합니다. 오늘은 우선 가게들의 이름만 크롤링을 통해 가져오는 것을 목표로 하겠습니다.1. Crawling 이란2. Python Crawling 라이브러리3. Code Review 1. Crawling 이란웹 크롤링은 웹 사이트에 있는 정보를 자동으로 빠르게 수집하는 기술입니다. 이는 데이터 분석, 웹사이트 자동화, 인공지능 학습 데이터 수집 등 다양한 분야에서 활용되고 있습니다. 저는 이번 프로젝트에서 파이썬을 사용해 크롤링을 진행할 예정입니다. 파이썬 크롤링은..

CampusMeet 2024.08.11