備忘録:ウォレット接続してNFTメタデータを取得する際に使えるプロキシサーバーの作り方

tenchan

プロキシサーバーのセットアップガイド

概要

このドキュメントでは、Xserver VPSを使用してNode.jsベースのプロキシサーバーを構築する方法について説明します。プロキシサーバーは、NFTメタデータの取得やフロントエンドとのデータ通信など、様々な用途に使用できます。

必要なもの

  • Xserver VPSアカウント
  • SSHクライアント(例: Putty)
  • FTPクライアント(例: FileZilla)
  • Node.jsとnpm(ローカル開発環境)

ステップ1: VPSの設定

  1. Xserver VPSにログイン: Xserverの管理パネルにアクセスして、VPSを選択します。
  2. VPSの設定: 必要に応じてVPSのリソース(CPU、RAMなど)を設定します。

ステップ2: SSHアクセスの設定

  1. Puttyのダウンロードとインストール: 公式サイトからPuttyをダウンロードしてインストールします。
  2. SSH接続情報の取得: Xserverの管理パネルからVPSのIPアドレスとSSHログイン情報を取得します。
  3. Puttyでの接続: Puttyを開き、取得したIPアドレスを使用してVPSにSSH接続します。

ステップ3: Node.jsのインストール

  1. Node.jsのインストール: SSH接続後、以下のコマンドでNode.jsをインストールします。
   sudo apt update
   sudo apt install nodejs
   sudo apt install npm

ステップ4: プロジェクトのセットアップ

  1. プロジェクトディレクトリの作成: VPS上で適切な場所にプロジェクトディレクトリを作成します。
   mkdir my-proxy-server
   cd my-proxy-server
  1. プロジェクトの初期化: Node.jsプロジェクトを初期化し、必要なパッケージをインストールします。
   npm init -y
   npm install express axios cors

ステップ5: サーバーコードの開発

  1. ローカル開発: ローカル環境でサーバーコード(例: server.js)を開発します。
  2. テスト: ローカルでサーバーをテストし、動作を確認します。

ステップ6: コードのアップロード

  1. FTPクライアントの設定: FTPクライアント(例: FileZilla)を使用してVPSに接続します。
  2. ファイルのアップロード: 開発したコードをVPSのプロジェクトディレクトリにアップロードします。

ステップ7: サーバーの起動

  1. PM2のインストール: VPSでPM2(プロセスマネージャー)をインストールします。
   sudo npm install pm2 -g
  1. サーバーの起動: PM2を使用してサーバーを起動します。
   pm2 start server.js

ステップ8: Apache設定(オプショナル)

  1. Apacheの設定: 必要に応じてApacheをインストールし、リバースプロキシ設定を行います。

ステップ9: メンテナンスと監視

  1. ログの確認: PM2のログを定期的に確認して、サーバーの動作状況を監視します。
   pm2 logs

プロキシサーバーのセットアップガイド(SSL証明書とDNS設定を含む)


ステップ10: SSL証明書の取得

  1. Let’s Encryptのインストール: Let’s Encryptを使用して無料のSSL証明書を取得します。
   sudo apt install certbot
   sudo apt install python3-certbot-apache
  1. SSL証明書の取得: 証明書を取得するためにCertbotを実行します。
   sudo certbot --apache
  1. 自動更新の設定: SSL証明書の自動更新を設定します。
   sudo certbot renew --dry-run

ステップ11: DNS設定

  1. DNSレコードの設定: ドメインプロバイダーの管理パネルで、VPSのIPアドレスに対してAレコードを設定します。

ステップ12: Apache設定ファイルの編集

  1. 000-default.confの編集: Apacheのデフォルト設定ファイルを編集して、リバースプロキシ設定を追加します。
   sudo nano /etc/apache2/sites-available/000-default.conf
  1. リバースプロキシ設定の追加: 以下のようにProxyPassProxyPassReverseディレクティブを追加します。
   <VirtualHost *:80>
       ServerName yourdomain.com

       ProxyPass / http://localhost:3007/
       ProxyPassReverse / http://localhost:3007/

       # その他の設定...
   </VirtualHost>
  1. Apacheの再起動: 設定を適用するためにApacheを再起動します。
   sudo systemctl restart apache2

ステップ13: SSL証明書の確認

  1. SSL証明書の状態確認: ブラウザでドメインにアクセスし、SSL証明書が適切に設定されていることを確認します。

ABOUT ME
天ちゃん
天ちゃん
Web3エンジニア/クリエイター
Web3.0を中心として活動しているフリーランス
【経歴】
静岡文化芸術大学卒業
ハウスメーカー:営業・設計
飲食店チェーン:営業・マネジメント
スタートアップ:ECサイト創業・運営
(和菓子)   広報責任者
        IT技術責任者
        対内外折衝総合窓口
Web3.0やNFTの可能性に魅入られ育児のかたわらフリーランスとしてフルコミットしています
主な活動実績
【エンジニア】
国内最大級のオンラインコミュニティ NinjaDAO公式のジェネラティブコレクション
・MusubiCollection コントラクト・ミントサイト制作
・CNP宝島2023 SBTコントラクト・ミントサイト制作
・CryptoNinja PictureBook SBTコントラクト・ミントサイト制作
【Webデザイン】
AbbysGuild(アビスギルド)春のスタンプコンぺ投票サイト制作
CNP宝島2023 公式サイト制作
記事URLをコピーしました