mameブログ

mameという男がやりたい事をやっている記録

AWSで引っかかった罠メモ

初心者的な苦しみ。。。

「初心者」という前置きで自分を卑下しつつ、本当に初心者だから陥った罠なのかは分かりませんが。。。
AWSでサーバレンタルして、サーバ上にDjango(Webアプリケーション)の環境構築をしようとしたのですが、ミスをしてどんどん自体が悪化してしまいました。
自分が再度はまらないようにメモにしつつ記事として他の方のチカラになれれば。。。

Djangoの罠。

DjangoとはPythonプログラミング言語を用いたWebアプリケーションフレームワークです。
Djangoの公式チュートリアルは複雑ではありますが一応整っており、PythonとWeb系の勉強にもなるかも、という事で挑戦してみました。
しかし、Djangoをインストールできたと思ったら、、どうにもバージョン確認など初期動作がうまくいかない。
調べてみると、以下の原因であることがわかりました。


Python3.7バージョンと、Django1.xバージョンは食い合わせが悪い。


・・・らしいです。
知らずにこの組み合わせでずっと試してました。
Djangoをアンインストールして、再度2.xバージョンをインストールしたら正常動作できることを確認できました。
ちなみにAWSのサーバレンタルすると、Python2.7バージョンがインストールされてました。
Python2.xバージョンはそれはそれでDjangoが動作しなかったので、この点も注意です。

ディレクトリのパーミッション設定の罠。

EC2のディレクトリをWinSCPツールでのぞいたり、TeraTermで操作したりしてました。
で、ディレクトリの権限についてちょっといじってみるかって、何の気なしにパーミッション操作(777)してみたところ、EC2にログインができなくなってしまいました。。。
原因は、


ディレクトリそれぞれ、設定してはいけないパーミッションがある。


・・・らしいです。
ホームディレクトリは755以下にしないといけない。
sshディレクトリは700、ssh/authorized_keysは600、でないとダメ。
なんでかはよくわかりませんが。
で、このログインできない状態だとかなり復活が難しいらしい。
こんなサイトがありました。


ja.uwenku.com


これによると、EC2をもう1つ立てて情報をそこに移し、
移した情報に対してパーミッション設定を正しく行う。
そしてまた情報をもとのEC2に戻してから再ログイン、
という流れです。
私、こちらはまだ試してないです、くじけ気味。。。

落とし穴多いので気を付けて

AWS操作していると落とし穴だらけです。
ウェブ系の知識が足りないからか、歩いては罠にかかり、また一歩歩いては罠にかかりの日々。
上達しない度合いが強くて落ち込みますが、、こんな人も頑張ってやっていますので、皆さんも頑張りましょう。