ApacheポートフォワーディングでNuxt×Golang

掲載日
更新日

はじめに

このサイトはフロント側をNuxt4、バックエンド側をGolang(Gin)で作成しています。

(ポートフォリオサイトの方にGitHubへのコードも載せています。)

本当はApacheではなくNginxなどを使った方がいいんだと思いますが、今回自分の構成ではApache上にそれぞれデプロイしていきます。

そのため、同じドメインで以下のように振り分けたくなりました。

  • フロント(Nuxt)をポート3000で起動し、example.comにアクセスしたらポート3000に転送
  • API(Gin)をポート3001で起動し、example.com/api/XXX にアクセスしたらポート3001に転送

ポートフォワーディングを使って振り分ける

上記のような振り分けをする時に便利なのがポートフォワーディング(ポート転送)という機能。
 sslで対応する場合はssl.confに以下のように記載します。

RewriteEngine On
SSLProxyEngine On

ProxyPass /api http://localhost:3001/api
ProxyPassReverse /api http://localhost:3001/api

ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/

注意点

地味な詰みポイントとして、転送は記述した上から順に実行されるので、

ProxyPass / http://localhost:3000/

を最初に書くと、すべてのページがNuxt側に転送されてしまい、/apiにアクセスしてもGolang側に転送されません。(1敗)

 

    • BlueSkyで共有する
    • Hatenaで共有する
記事の作成者のW.Aのアイコン

この記事を書いた人

W.A
茨城県在住Webエンジニアです。 PHP、PostgreSQL、Linuxなどを業務で使用しています。 趣味ではGoやNuxt、Flutterをやってます。

Comment

関連記事

  • SSLエラーで一部の環境のみ表示されない原因と対応のサムネイル画像

    SSLエラーで一部の環境のみ表示されない原因と対応

    掲載

    アクセスする環境(PC)によってサイトのSSL対応状況が異なっている(ブラウザの鍵マークが赤くなるPCと赤くならないPCがある)トラブルの原因が「中間証明書の期限切れ」だった時の備忘録。opensslコマンドを使った調査方法をまとめました。

  • Windows11、Apacheでの自己証明書(オレオレ証明書)のやり方メモのサムネイル画像

    Windows11、Apacheでの自己証明書(オレオレ証明書)のやり方メモ

    掲載

    Windows+Apache環境で、Chromeブラウザで警告が出ない「独自SSL証明書(オレオレ証明書)」を作成・導入する手順を解説します。Service Workerやクリップボードへのコピーなど、HTTPSが必須となるローカル開発環境の構築に役立つ備忘録です。

check コピーしました!