備忘録:ウォレット接続してNFTメタデータを取得する際に使えるプロキシサーバーの作り方
プロキシサーバーのセットアップガイド
概要
このドキュメントでは、Xserver VPSを使用してNode.jsベースのプロキシサーバーを構築する方法について説明します。プロキシサーバーは、NFTメタデータの取得やフロントエンドとのデータ通信など、様々な用途に使用できます。
必要なもの
Xserver VPSアカウント
SSHクライアント(例: Putty)
FTPクライアント(例: FileZilla)
Node.jsとnpm(ローカル開発環境)
ステップ1: VPSの設定
Xserver VPSにログイン: Xserverの管理パネルにアクセスして、VPSを選択します。
VPSの設定: 必要に応じてVPSのリソース(CPU、RAMなど)を設定します。
ステップ2: SSHアクセスの設定
Puttyのダウンロードとインストール: 公式サイトからPuttyをダウンロードしてインストールします。
SSH接続情報の取得: Xserverの管理パネルからVPSのIPアドレスとSSHログイン情報を取得します。
Puttyでの接続: Puttyを開き、取得したIPアドレスを使用してVPSにSSH接続します。
ステップ3: Node.jsのインストール
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
2.プロジェクトの初期化: Node.jsプロジェクトを初期化し、必要なパッケージをインストールします。
npm init -y
npm install express axios cors
ステップ5: サーバーコードの開発
ローカル開発: ローカル環境でサーバーコード(例: `server.js`)を開発します。
テスト: ローカルでサーバーをテストし、動作を確認します。
ステップ6: コードのアップロード
FTPクライアントの設定: FTPクライアント(例: FileZilla)を使用してVPSに接続します。
ファイルのアップロード: 開発したコードをVPSのプロジェクトディレクトリにアップロードします。
ステップ7: サーバーの起動
1.PM2のインストール: VPSでPM2(プロセスマネージャー)をインストールします。
sudo npm install pm2 -g
2.サーバーの起動: PM2を使用してサーバーを起動します。
pm2 start server.js
ステップ8: Apache設定(オプショナル)
Apacheの設定: 必要に応じてApacheをインストールし、リバースプロキシ設定を行います。
ステップ9: メンテナンスと監視
1.ログの確認: PM2のログを定期的に確認して、サーバーの動作状況を監視します。
pm2 logs
プロキシサーバーのセットアップガイド(SSL証明書とDNS設定を含む)
ステップ10: SSL証明書の取得
Let's Encryptのインストール: Let's Encryptを使用して無料のSSL証明書を取得します。
sudo apt install certbot
sudo apt install python3-certbot-apache
SSL証明書の取得: 証明書を取得するためにCertbotを実行します。
sudo certbot --apache
自動更新の設定: SSL証明書の自動更新を設定します。
sudo certbot renew --dry-run
ステップ11: DNS設定
DNSレコードの設定: ドメインプロバイダーの管理パネルで、VPSのIPアドレスに対してAレコードを設定します。
ステップ12: Apache設定ファイルの編集
000-default.confの編集: Apacheのデフォルト設定ファイルを編集して、リバースプロキシ設定を追加します。
sudo nano /etc/apache2/sites-available/000-default.conf
リバースプロキシ設定の追加: 以下のようにProxyPassとProxyPassReverseディレクティブを追加します。
<VirtualHost *:80>
ServerName yourdomain.com
ProxyPass / http://localhost:3007/
ProxyPassReverse / http://localhost:3007/
# その他の設定...
</VirtualHost>
Apacheの再起動: 設定を適用するためにApacheを再起動します。
sudo systemctl restart apache2
ステップ13: SSL証明書の確認
SSL証明書の状態確認: ブラウザでドメインにアクセスし、SSL証明書が適切に設定されていることを確認します。
この記事が気に入ったらサポートをしてみませんか?