システム管理
【Laravel】Sqliteのデータベースファイルをワンライナーで再生成する【findコマンド+-exec評価式+alias】【migrate:fresh】
前々から思っていた。マイグレーションミスってDBごと消してマイグレーションファイルを修正したい場合、DBのファイルを探して削除するのは面倒だと。 プロジェクトのディレクトリで下記コマンドを実行する。 find ./database/ -name "database.sqlite" -exec rm "{}" \; -exec touch "{}" \; bashのaliasに登録すれば上記コマンドをさらに短くできる。 alias laravel-dbrefresh='find ./database/ -name "database.sqlite" -exec rm "{}" \; -exec touch "{}" \;' このコマンドの注意点は2つある。 1つ目はLaravelプロジェクト直下に移動して実行するこ ...【Django】settings.pyのSECRET_KEYを再発行(リジェネレート)する【alias登録で即生成・即実装からの再起動】
うっかり、SECRET_KEYをバージョン管理対象に含ませてしまった。このままではクラウドサーバーにデプロイしたSECRET_KEYが予測され、CSRFトークン等が機能不全になってしまう。 そんな時に備えておきたい、SECRET_KEYの再発行の方法を解説する。 ソースコード Qiitaより拝借。 from django.core.management.utils import get_random_secret_key secret_key = get_random_secret_key() text = 'SECRET_KEY = \'{0}\''.format(secret_key) print(text) 実行すると、 SECRET_KEY = '07y^y0#_7b74jy)d6z0lu5*r$#azfyt1*1f+g1-3w+l@&hs^2!' 等の文言が出てくる。 aliasに登録して、どこでも再発行できるよ ...【Django+Sendgrid】サーバー処理中(ビュー、独自コマンド)に通知メール(To,CC,BCC)を送信する
サーバーを本格的に運用するようになったらやること・守ること
- 作成日時:
- 最終更新日時:
- Categories: インフラ
- Tags: スタートアップシリーズ システム管理 セキュリティ
DjangoでサイトにアクセスしたクライアントのIPアドレス、ユーザーエージェント(UA)、プロバイダ名(ゲートウェイ名)を表示する【犯罪・不正行為の抑止とセキュリティ】
不正行為や犯罪などの抑止力として効果を発揮する、クライアントのUA、IPアドレス及びプロバイダ名の表示。その方法をここに記す。 グローバルIPアドレスを表示 ビュー側で以下のように取得する。 ip_list = request.META.get('HTTP_X_FORWARDED_FOR') if ip_list: ip = ip_list.split(',')[0] else: ip = request.META.get('REMOTE_ADDR') もし、ip_listに記録されたIPアドレスが複数ある場合は、ネットワーク構成などを考慮して添字を指定する。 ユーザーエージェント(UA)を表示 ビュー側で以下のように取得する。 user_agent = request.META.get('HTTP_USER_AGENT') リクエスト ...【AWS】EC2にムームドメインで取得した独自ドメインを割り当て、HTTPS通信を行う【Route 53 + Certificate Manager + ロードバランサ(ELB)】
AWSでなるべくお金がかからないようにウェブアプリを運用する方法
【Django】同一人物による工作(再生数の水増しなど)をいかにして防ぐか、方法と対策【UniqueConstraint,Recaptcha,UA,IPアドレス等】
VirtualBoxにUbuntuをインストールする
- 作成日時:
- 最終更新日時:
- Categories: インフラ
- Tags: ubuntu virtualbox システム管理