サイトについて

システム概要

このポートフォリオサイトは、複数の技術スタックを組み合わせて構築された統合Webシステムです。

Django、PHP、MySQL、Nginx、Dockerなどの技術を活用し、セキュアで高性能なWebアプリケーションとして運用されています。

使用技術・言語

バックエンド
  • Python 3.10 - Django 4.2フレームワーク
  • PHP 8.1 - 動的Webアプリケーション
  • MySQL 8.0 - データベース管理システム
  • SQLite - Django開発用データベース
フロントエンド・インフラ
  • Bootstrap 5.3 - CSSフレームワーク
  • JavaScript - クライアントサイド処理
  • Nginx 1.24 - Webサーバー・リバースプロキシ
  • Docker - コンテナ化技術

サーバー環境

ハードウェア仕様
  • PC: NIPOGI ミニPC
  • CPU: AMD Ryzen 5 7430U
  • メモリ: 16GB DDR4
  • ストレージ: 512GB SSD
OS・ネットワーク
  • OS: Ubuntu 22.04 LTS
  • ドメイン: sush1board.com
  • SSL: Let's Encrypt証明書
  • ネットワーク: 固定IP・ポート開放

構築プロセス

ドメイン取得

お名前ドットコムでsush1board.comを取得

サーバーセットアップ

Ubuntu 22.04 LTSをインストールし、基本設定を完了

Docker環境構築

Docker、Docker Composeをインストールし、コンテナ環境を構築

アプリケーション開発

Django、PHPアプリケーションを開発し、Dockerコンテナ化

Nginx設定

リバースプロキシ設定、SSL証明書設定を完了

SSL証明書取得

Let's EncryptでSSL証明書を取得し、HTTPS化を完了

セキュリティ対策

SSL/TLS
  • Let's Encrypt証明書による暗号化通信
  • HTTP/2プロトコル対応
  • HSTS(HTTP Strict Transport Security)設定
その他の対策
  • Dockerコンテナによる分離
  • ファイアウォール設定
  • 定期的なセキュリティアップデート

パフォーマンス最適化

静的ファイル最適化
  • CSS/JSファイルの圧縮・最適化
  • 画像の最適化(WebP形式対応)
  • ブラウザキャッシュ設定
サーバー最適化
  • Nginxリバースプロキシ
  • Gzip圧縮対応
  • レスポンシブデザイン対応