Web開発総合クラス5週間開発ログ

4170 ワード

1.コース目標


1)Flaskフレームワークを使用してAPIを作成できます。


2)「願い事リスト」を作成する。


3)EC 2に私のアイテムをアップロードして自慢!


2.学んだこと


1)サーバへのアップロード


(1)awsサーバの購入


Ubuntu server 20.04
(停止サーバはインスタンス-インスタンスステータス-終了)

(2)EC 2接続


ターミナルで
sudo chmod 400 받은키페어끌어놓기       (받은 키페어의 접근 권한 바꿔주기)

ssh -i 받은키페어끌어놓기 ubuntu@AWS에적힌내아이피       (SSH접속)
———————————————————
Linux共通コマンド
ls:私の場所のすべてのファイルを表示します.
mkdir:「マイロケーション」でフォルダを作成する
cd[]:[]に移動
cd .. : 親フォルダに移動

(3)サーバの設定

 1. EC2 한번에 설정하기 (차례로 터미널에 넣는다.)


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
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

port forwarding
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 7777

2. FileZilla에서 작업한 것들 올리기

다음과 같이 설정한다.
그 후 넣을 폴더에 작업한 static폴더, templates폴더, app.py를 filezilla로 올린다. 

3. pip으로 패키지 설치하기 (프로젝트 폴더 안에다가)

바로 python app.py 하면 실행이 안된다.
따라서 flask, pymongo,dnspython을 설치해준다.

pip install flask
pip install pymongo
pip install dnspython

4. AWS에서 5000포트 열어주기

(포트80도 추가해주기)

6. nohup 설정하기

원격접속 종료해도 서버 돌아가게
nohup python app.py &

강제종료
ps -ef | grep 'python app.py' | awk '{print $2}' | xargs kill

7. 도메인 연결

가비아 접속 -> dns설정 -> 호스트 : @ / 위치 : aws 퍼블릭 주소 숫자만


8. 내용 변경시

서버를 멈춘다 -> 파일 수정 -> filezilla에 다시 올리기 -> 서버 키기

2)ロゴラベルの追加


頭に入れる
<meta property="og:title" content="내 사이트의 제목" />
<meta property="og:description" content="보고 있는 페이지의 내용 요약" />
<meta property="og:image" content="이미지URL" />

3.感じるところ、補うところ


宿題をしているとき、初めてウェブサイトが正常に動作していない場合に遭遇しました.これは、サーバを開いたときにMongoDBが接続できないという問題です.localhostを開くと、正常に実行されて作成されたpythonファイルとhtmlファイルに問題はなく、カリキュラムの一般的な問題を読み、解決したいと結論しました.でも解決できなかったのは、グーグルでわかりました.
問題は、MongoDB Cloudのネットワークアクセスに問題が発生したことです.したがって、security-network accessを随所接続に変換することで解決できます.
こうして、最後の週の講座も課題も解決しました.まだ完全に私のものになっていないようなので、復習と練習を頑張ります.