EmDashはXSERVERで動くのか。Node環境を実測した結果と現実解
結論から言います。XSERVERにはNode.js v22が入っており、プログラム自体は動きます。ただし、EmDashを外部公開するための常駐とポート開放は共有プランではできないため、現時点の現実解はCloudflare Workersでの公開です。この記事は、その両方を実際に確かめた結果です。
EmDash移行を考えるとき、最初につまずくのが「今のサーバーで動くのか」という疑問です。このブログの運営者はXSERVERアカウントを持っているため、ハブの記事で「断定しない」としていた部分を、実際に確かめました。
要点は次の3つです。
- XSERVERのサーバー上でNode.js v22.13.1(npm 10.9.2)の実行を確認。プログラムは動く
- ただし外部からEmDashのポートへは接続できず(実測でタイムアウト)、共有プランでは常駐サービスを外部公開する手段がない
- 公開の現実解はCloudflare Workers。当サイトのデモもWorkersで公開中で、この構成なら国内サーバーの要件問題そのものが消える
なぜ「国内サーバーで動くのか」が問題になるのか
EmDashのnode構成は、Node.jsのプロセスとして動きます(起動はnode ./dist/server/entry.mjs、実測の手順参照)。WordPressがPHPとしてApacheに組み込まれるのとは違い、Nodeアプリは「常駐するプロセス」であり、外部からのアクセスをそのプロセスへ届ける必要があります。
これは発注側にとって、移行判断の中で一番技術的な論点です。次の2つが確認できれば移行できます。
- サーバーでNode.jsが動く
- 常駐プロセスへ外部アクセスを届けられる(リバースプロキシまたはポート公開)
このうち1つでも欠けると、そのサーバーでは公開できません。
実測①: XSERVERにはNode.js v22が入っている
XSERVERのアカウントへSSH接続して確認したところ、nodebrew配下にNode.js v22.13.1・npm 10.9.2がインストール済みでした。テスト用の最小HTTPサーバーを起動し、サーバー内部からアクセスしたところ正常に応答を返しました。
| 確認項目 | 実測結果(2026-10-22) |
|---|---|
| Node.js | v22.13.1(~/.nodebrew/current/bin/node) |
| npm | 10.9.2 |
| サーバー内部でのNode起動 | 成功(テストサーバーが応答) |
ここまでは合格です。「Nodeは入っていないから無理」という心配は要りません。nodebrewで管理されているため、Nodeのバージョン切り替えも可能です。ただし、これはあくまで「サーバーの中でNodeが動く」という事実であって、公開の可否は次の実測の通り別の問題です。
実測②: ただし外部公開は共有プランではできない
次に、外部からアクセスできるかを確かめました。テスト用サーバーを起動したまま、サーバー内部からのアクセスは成功した一方、外部のネットワークからそのポートへは接続がタイムアウトしました。XSERVERのファイアウォールが任意ポートを閉じているためです。
WordPressが動いているのは、Apache(80/443番ポート)がPHPを実行する仕組みだからです。Nodeアプリを同じように公開するには、Apacheが受けたアクセスをNodeのプロセスへ中継する(リバースプロキシ)設定が必要ですが、この設定はレンタルサーバーの共有プランではユーザーが変更できません。
つまり実測の結論はこうなります。
- Nodeは動く。だが、EmDashをXSERVERの共有プランで外部公開する道は現時点でない
- 移行したい場合は、環境ごと変えるのが正解になる
なお、この確認はテスト用のプロセスを一時起動して即削除したもので、本番サイトへの影響はありません。
現実解はCloudflare Workers。デモで実証済み
では、どこで動かすのか。答えはシンプルで、Cloudflare Workersです。EmDashの開発元であるCloudflare自身の実行環境なので、最も想定された構成です。
- デプロイは
wranglerコマンドで完了する - 当サイトが公開しているデモサイトもこの構成で動いています
- 環境費は無料枠から月5ドル。サーバー管理(OSの更新・再起動・セキュリティパッチ)という作業自体が消えます
「国内のサーバーに置きたい」という要望に対しては、Node+SQLiteが動くVPSや、国内リージョンでの運用を謳うサービス(EmDash かんたん運用 β - kworksなど)が選択肢になります。共有レンタルサーバーだけが、唯一の落とし穴です。今WordPressを置いているサーバー名を見て「XSERVERだから大丈夫」とはならない、というのがこの記事の結論です。なお、この制約はホスティング事業者の仕様変更で変わる可能性があるため、判断時点で最新の仕様を確認してください。
選択肢を並べると、次のように整理できます。
| 公開環境 | サーバー管理 | 環境費 | 向いているケース |
|---|---|---|---|
| Cloudflare Workers(当デモの構成) | 実質不要 | 無料枠〜月5ドル | ほとんどの小規模サイト。標準の選択 |
| VPS(Node常駐) | 自分で行う(OS更新・監視) | 月数百円〜 | 国内サーバー要件や特殊なミドルウェアが必要な場合 |
| 国内運用サービス | 業者に任せる | 月額(要問い合わせ) | 管理ごと外注したい場合 |
当サイトのデモはWorkers構成で公開しており、次のとおり本番稼働しています。日本語の企業サイトとして、共有サーバー時代の管理作業なしで動いています。

発注側が確認すべきこと
移行を検討する際は、次の3点を確認すれば十分です。
- [ ] 現在のサーバーでNode.jsが使えるか(使えても公開可否は別問題)
- [ ] Cloudflare Workers(またはVPS)での公開を前提に進めるか
- [ ] 移行後にサーバー管理を誰がするか(Workersなら実質不要)
これらは移行手順の記事のステップ1(事前調査)に含まれます。作業の内訳と費用の考え方は移行費用の記事を参照してください。
EmDash移行の環境選びも、相談の中で決められます
このサイトの運営者(フリーランスのWeb制作者)は、EmDash移行案件を受け付けています。サーバー要件の確認は調査レポートの最初の項目で、「今のサーバーで動くか」から「どの環境で公開するのが最適か」までを数字と根拠つきでお出しします。
- 問い合わせフォームにサイトURLを送る
- 調査レポートで、公開環境の選択肢・費用レンジ・期間を提示
- 納得できたら移行着手(Workersでの公開が基本構成)
「うちのサーバーでも動きますか?」は、調べれば必ず答えが出る質問です。答えを出す前に決める必要はありません。
よくある質問
Q. XSERVERでどうしても動かしたい場合は?
VPS(仮想サーバー)プランに切り替えれば、Nodeの常駐と公開が可能になります。ただしOSの管理・セキュリティ対応は自己責任になります。手間を考えるとCloudflare Workersのほうが運用は軽いです。
Q. Cloudflare Workersは日本から遅くありませんか?
Cloudflareは世界のエッジロケーションで配信するため、静的部分は日本国内のエッジから返ります。デモサイトも国内から問題なく表示されています。気になる場合は移行前の検証で確認できます。
Q. 独自ドメインは使えますか?
Workersに独自ドメインを接続できます。DNSの設定変更が必要になるため、移行手順の一部として実施します。
Q. サーバーで運用しているメールアドレスはどうなりますか?
サイトだけをWorkersへ移し、メールは引き続きXSERVERで運用する併用構成が可能です。DNSの切替時にメールの経路(MXレコード)を残す設計にするため、移行の手順に含めておけばメールが止まることはありません。「サイトとメールを同じサーバーに置かなければならない」という縛りはありません。
Q. 今のXSERVER契約はどうすればいいですか?
移行と並行して契約を維持し、公開確認が終わってから解約するのが安全です。メールアドレスをサーバーで運用している場合は、移行先の設計が必要になります。
Q. この確認を自分でやるには?
SSHでnode -vを実行できるなら、この記事の実測と同じ確認ができます。ただし公開までの道筋(リバースプロキシの可否、Workers設計)は環境ごとの専門判断なので、まとめて調査に含めるのが確実です。
まとめ: サーバー要件は「調べたら答えが出る」
- XSERVERにはNode v22.13.1が存在し、プログラムは動く(実測)
- しかし外部公開は共有プランでは不可(任意ポートはファイアウォールで遮断される・実測)
- 現実解はCloudflare Workers。デモで実証済みで、サーバー管理という作業自体が消える
「今のサーバーで動くか」は、感覚で悩むべきではありません。調べれば数値で出ます。サイトURLを送るだけで、要件確認と公開環境の提案までを調査レポートに含めます。