웹 개발 prep course 5주차
배운 내용
EC2에 프로젝트 올리기 (feat. filezilla, gabia, AWS EC2)
ubuntu 서버 접속
ssh -i keypair 위치(파일을 터미널로 드래그해도 됨) ubuntu@AWS IP
- EC2 세팅 파일 내용 (initial_ec2.sh)
UTC to KST
sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
python3 -> python
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
pip3 -> pip
sudo apt-get update
sudo apt-get install -y python3-pip
pip3 --version
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1port forwarding
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5000
MongoDB - install
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
sudo apt-get update
sudo apt-get install -y mongodb-org
sudo mkdir -p /data/dbMongoDB - run
sudo service mongod start
sleep 7
netstat -tnlpMongoDB set user, set conf file
mongo admin --eval 'db.createUser({user: "test", pwd: "test", roles:["root"]});'
sudo sh -c 'echo "security:\n authorization: enabled" >> /etc/mongod.conf'
sudo sed -i "s,\(^[[:blank:]]bindIp:\) .,\1 0.0.0.0," /etc/mongod.conf
sudo service mongod stop
sudo service mongod start
sleep 5
netstat -tnlp
- 위 initial_ec2.sh 파일을 파일질라로 업로드하고, 터미널에서 아래 코드를 차례대로 입력해준다.
sudo chmod 755 initial_ec2.sh
./initial_ec2.sh
- 원격 접속을 종료하더라도 서버가 계속 돌아가게 하기
nohup python app.py &
- 서버 종료하기 - 강제종료하는 방법 (파일을 바꿔줄때 연결을 끊었다가 재접속 해야함.)
# 아래 명령어로 미리 pid 값(프로세스 번호)을 본다 ps -ef | grep 'app.py' # 아래 명령어로 특정 프로세스를 죽인다 kill -9 [pid값]
- og 태그 넣기
<meta property="og:title" content="원페이지 쇼핑몰" /> <meta property="og:description" content="맥북 급처" /> <meta property="og:image" content="{{ url_for('static', filename='ogimage.png') }}" />
- og 태그를 바꾸더라도 카카오톡 등의 서버에서는 캐시를 사용하기 때문에 바로 변경되지 않는다
페이스북 og 태그 초기화 하기: https://developers.facebook.com/tools/debug/
카카오톡 og 태그 초기화 하기: https://developers.kakao.com/tool/clear/og
느낀 점
혼자 프로젝트를 진행할때엔 git을 이용해 올리고, github.io에 페이지를 보여주는 방식을 사용했다.
서버도 구매하고, filezilla를 통해 파일관리도 용이하게 하며, 도메인도 내가 원하는 도메인을 사용할 수 있어서 굉장히 신선한 프로젝트였다. 실제 페이지를 지인에게 공유하고 받은 데이터를 DB에 저장할 수 있어서 대략적인 웹 개발의 flow를 이해할 수 있었다.
Author And Source
이 문제에 관하여(웹 개발 prep course 5주차), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@uvula6921/웹-개발-prep-course-5주차저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)