近年、ノーコード・ローコードツールの発展により、容易にAIアプリの開発が可能です。
その中でも「Dify」は、AIアプリを効率的に構築できるオープンソースのプラットフォームとして注目されています。
特にサブドメインを活用することで、既存のWebサイトと統合しつつ、Difyを独立した環境で運用できるメリットがあります。
本記事では、Xserver VPSを利用してDifyをサブドメインで運用する方法を詳しく解説するとともに、設定時に起こりやすい問題とその解決策について紹介します。

Difyをサブドメインで運用したいと考えている方は、ぜひ参考にしてください。
Difyをサブドメインで運用する方法
Difyをサブドメインで運用することで、メインサイトとは独立した環境でAIアプリを運用できるため、管理の柔軟性が向上します。
例えば、以下のようなケースでは、サブドメイン運用が特に有効です。
- AIチャットボットの提供
企業の公式サイトとは別に、chat.example.com
のようなサブドメインでAIチャットボットを公開 - 社内ツールとして利用
internal.example.com
のようなサブドメインを設定し、社内向けのAIアシスタントを構築 - クライアント向けサービスの展開
複数のクライアントに異なるAI機能を提供する場合、それぞれの専用サブドメインを用意
サブドメイン運用の主なメリット
- 独立性の確保
サブドメインを利用することで、Difyがメインサイトと干渉することなく運用可能
Webサイトの変更がDifyの動作に影響を及ぼさないため、システムの安定性が高まる - アクセスのしやすさ
「https://ai.example.com」のようにわかりやすいURLを設定できるため、利用者がアクセスしやすくなる - スケーラビリティの向上
サブドメインを活用することで、複数の異なるDifyアプリケーションを管理しやすくなる
「support.example.com」にはカスタマーサポート向けAI、「sales.example.com」には営業支援向けAIを配置するなど、用途ごとに分けて運用可能



以上の理由から、Difyをサブドメインで運用するのは合理的な選択肢と言えます。
Xserver VPSでDifyをサブドメインに設定する方法


DifyをXserver VPSで運用するには、VPSの契約、サーバーの初期設定、Difyのインストール、サブドメインの設定、リバースプロキシの設定(オプション) という手順を踏む必要があります。
まずは、Xserver VPSの申し込み方法から解説します。
Difyを運用するためには、まずXserver VPSの契約を行い、必要な環境を整える必要があります。
Xserver VPSの申し込み手順


- Xserver VPSの公式サイト(https://vps.xserver.ne.jp/)にアクセス
- 「お申し込み」ボタンをクリック
- プランを選択(Difyを動作させるためには、最低でも4GBプラン以上を推奨)
- アプリケーションの選択(Difyを選択)
- rootパスワードを設定(VPSの管理に必要なので、忘れないようにメモしておく)
- 秘密鍵のダウンロード(大切に保管しておく)
- 申し込みを完了し、サーバーが開通するのを待つ(通常、数分〜10分程度で利用可能になる)



申し込みからサーバーやドメイン設定の詳しい解説は下記記事をご覧ください。


Difyをサブドメイン(例:ai.example.com
)で運用するには、DNSの設定を行う必要があります。
XserverのサーバーパネルでDNS設定を変更
1.Xserverのサーバーパネル(https://www.xserver.ne.jp/login_server.php)にログイン
2.「ドメイン」メニューから「DNSレコード設定」を開く


3.「DNSレコード設定追加」ボタンをクリック


4.以下の情報を入力し、Aレコードを追加


- ホスト名:
ai
(例:ai.example.com
の場合は「ai」と入力) - タイプ:Aレコード
- 内容:Xserver VPSのIPアドレス(契約時に確認したもの)



サブドメインはDNS設定に何も表示されないため、焦らないようにしましょう
反映の確認
DNS設定の変更が反映されるまで、通常数時間かかります。
設定が適用されたか確認するには、コンソールより以下のコマンドを使用してください。


nslookup ai.example.com
または、以下のコマンドでもチェック可能です。
dig ai.example.com
この結果に、設定したXserver VPSのIPアドレスが表示されれば、DNS設定が正しく適用されています。



以下のSTEP3と4はセキュリティをしっかりとしたものにしたい場合に設定してください。
リバースプロキシとは?
リバースプロキシを例え話で説明すると、「会社の受付係」のようなものです。


簡単に説明すると…
- 受付係(リバースプロキシ)の役割
- お客様(ユーザー)からの問い合わせを最初に受け付けます
- 適切な担当者(Webサーバー)に振り分けます
- お客様は受付を通じてやり取りするだけで、内部の仕組みを意識する必要がありません
- 主なメリット
- セキュリティの向上(内部のサーバーを直接見せない)
- 負荷分散(アクセスを複数のサーバーに分散)
- キャッシュによる高速化(よく使うデータを手元に置いておく)
- 実際の使用例
- 大規模なウェブサイト
- クラウドサービス
- 企業の社内システム
このように、リバースプロキシは「案内係」として、外からのアクセスを適切に内部のサーバーに振り分ける重要な役割を果たしています。



では、Difyをサブドメインで運用するために、リバースプロキシとしてNginxをセットアップしてみましょう。
Nginxのインストール
sudo apt install -y nginx
Nginxの設定(Dify用のリバースプロキシ)
設定ファイルを /etc/nginx/sites-available/dify.conf
に作成します。
server {
listen 80;
server_name ai.example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
作成後、設定を有効にしてNginxを再起動します。
sudo ln -s /etc/nginx/sites-available/dify.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx
Difyを安全に運用するために、SSL証明書を導入します。
Let’s Encryptを使用すると無料でSSL証明書を発行できます。
Certbotのインストール
sudo apt install -y certbot python3-certbot-nginx
SSL証明書の発行
sudo certbot --nginx -d ai.example.com
証明書の自動更新を設定
sudo crontab -e
以下の行を追加し、証明書の自動更新を設定します。
0 0 1 * * certbot renew --quiet



これで、Difyをサブドメインで運用するための設定が完了しました。
サブドメイン設定時のトラブル対処法
サブドメインを設定する際、いくつかの技術的な問題が発生することがあります。



ここでは代表的なトラブルとその解決策を紹介します。
DNS設定が反映されない
DNSレコードを設定したのに、サブドメインでDifyにアクセスできない場合、以下の点を確認しましょう。
1. 反映に時間がかかっていないか?
DNSの設定変更は即時に適用されるわけではなく、通常数時間〜最大24時間程度かかることがあります。



変更後すぐにアクセスできない場合は、しばらく待ってから再試行しましょう。
2. 正しいIPアドレスが設定されているか?
DNSの設定ミスもよくある原因です。
以下のコマンドを使って、設定が正しく適用されているか確認できます。
nslookup ai.example.com
または、以下のコマンドでもチェック可能です。
dig ai.example.com



正しくIPアドレスが返ってこない場合、DNSの設定ミスが考えられるので、Xserverの管理画面から設定を見直しましょう。
3. ブラウザやキャッシュの影響を受けていないか?
DNSのキャッシュが影響している可能性もあるため、以下の方法でキャッシュをクリアしてみてください。
- ブラウザのキャッシュ削除:Ctrl + Shift + R(Windows)または Cmd + Shift + R(Mac)
- ローカルのDNSキャッシュ削除(Windows)
ipconfig /flushdns
- ローカルのDNSキャッシュ削除(Mac/Linux)
sudo systemd-resolve -flush-caches
HTTPS(SSL証明書)が適用されない
HTTPS(SSL証明書)が適用されていない場合、以下の方法で無料SSL証明書(Let’s Encrypt)を取得し、Difyのサブドメインに適用できます。
1. Certbotをインストールする
sudo apt install -y certbot python3-certbot-nginx
2. SSL証明書を取得する
sudo certbot --nginx -d ai.example.com



このコマンドを実行すると、Let’s Encryptの無料SSL証明書が自動で発行され、Nginxの設定が書き換えられます。
3. 証明書の自動更新を設定する
SSL証明書は90日ごとに更新が必要ですが、以下の方法で自動更新できます。
sudo crontab -e
以下の行を追加して、毎月1日に証明書が更新されるように設定します。
0 0 1 * * certbot renew --quiet



これで、HTTPSが適用され、Difyのサブドメインに安全にアクセスできるようになります。
Difyが起動しない
Difyが正常に起動しない場合、以下のチェックポイントを確認しましょう。
1. Dockerコンテナが動作しているか?
docker ps
このコマンドを実行し、Difyのコンテナがリストに表示されているか確認し、表示されていない場合は、コンテナが停止している可能性があります。
2. コンテナのログを確認する
docker logs dify-container-name
エラーメッセージが出力されている場合、それに基づいて修正が必要です。
3. ポートが競合していないか?
Difyが使用するポート(例:8080)が他のサービスと競合していると起動に失敗します。
以下のコマンドで競合をチェックしましょう。
netstat -tulnp | grep 8080



もし競合している場合は、Difyの設定ファイルを編集し、使用するポートを変更するのも一つの解決策です。
Difyでサブドメインを使う時によくある質問
Difyをサブドメインで運用する際に、よくある疑問とその解決策をまとめました。
サブドメインを変更したい場合どうするべき?
サブドメインを変更する場合、以下の手順を踏む必要があります。
- XserverのDNS設定で、新しいサブドメインのAレコードを追加
- Nginxの設定を新しいサブドメインに変更(
server_name
の値を更新) - Certbotで新しいSSL証明書を取得
- Dockerコンテナを再起動
サブディレクトリで運用はできる?
Difyはサブディレクトリ(例:https://example.com/dify/
)での運用には向いていません。



リバースプロキシの設定で対応することは可能ですが、基本的にはサブドメイン(ai.example.com
など)での運用が推奨されます。
Difyをサブドメインで運用するのに適したサーバー環境は?
Difyをサブドメインで運用する際の推奨サーバー環境は以下の通りです。
- Xserver VPS(小規模運用向け)
手軽に導入可能で、国内サービスのためサポートも充実 - ConoHa VPS(小~中規模向け)
Xserverと同様に日本国内での利用に適している - AWS EC2 / Lightsail(中~大規模向け)
大規模運用に適し、スケーラブルなインフラを構築可能 - GCP / Azure(エンタープライズ向け)
高度なセキュリティと管理機能を備え、大企業向けに最適



基本的に、小規模運用ならXserver VPS、中規模以上ならAWSやGCPを利用するのが適しています。
まとめ
本記事では、Difyをサブドメインで運用する方法と、Xserver VPS環境での具体的な設定手順を詳しく紹介・解説しました。
サブドメインでDifyを運用すれば、既存のWebサービスと統合しやすく、管理の自由度も高まります。



XServer VPSを使えば、低コストで導入できるので、初心者の方もDifyは気軽に使えます。
本記事を参考にしながら、スムーズに導入を進めてみてくださいね。