未病データベースとWEKOの構成

未病データベースとWEKOの構成を記述する。

用語説明

本書では以下の用語で統一する。

用語 説明
フロント 未病データベースのフロントエンド
WEKO 未病データベース用のWEKO3リポジトリ(バックエンド)

フロントのパス一覧

以下はNuxtアプリケーションで動作する画面のパスであり、 各ページの動作は weko-frontend/pages ディレクトリ内のファイルで定義されている。

パス 説明
/ トップ画面
/ams/search 検索画面
/ams/contact お問い合わせ画面
/ams/detail アイテム詳細画面
/ams/files ファイル一覧画面
/ams/login ログイン画面
/ams/logout ログアウト画面

以下はNuxtアプリケーションのサーバーサイドで動作するAPIのパスであり、 各APIの動作は weko-frontend/server ディレクトリ内のファイルで定義されている。

APIパス メソッド 説明
/api/ams/captcha/<アイテムのID>/request-mail POST WEKOのリクエストメール送信APIにリクエストを送信するAPI
/api/ams/captcha/image GET WEKOのCAPTCHA画像取得APIにリクエストを送信するAPI
/api/ams/captcha/validate POST WEKOのCAPTCHA結果検証APIにリクエストを送信するAPI
/api/ams/mail/send POST メール送信API
/api/ams/token/create GET WEKOからアクセストークンを初回取得するためのAPI
/api/ams/token/refresh GET WEKOからアクセストークンを再度取得するためのAPI

フロントとWEKOの共存

フロントとWEKOを同一オリジンで動作させる。

フロントとWEKOの画面の両方を表示、またはフロントの画面のみを表示可能とする。

フロントとWEKOの両方の画面を表示

nginxの設定により、リクエストされたパスに応じてアクセス先のアプリケーションを振り分ける。

これにより、フロントとWEKOの両方の画面を表示できる。

WEKO単体で動作している場合と比較し、アクセスできない画面はWEKOのトップ画面のみとなる。

nginxコンテナの/etc/nginx/conf.d/weko.confweko/nginx/weko-ams.confの内容を設定した場合、この動作となる。

パス アクセス先アプリケーション 説明
/ フロント フロントのトップ画面
/ams/* フロント フロントの各画面

/amsおよび/ams/にアクセスした場合は/にリダイレクトする
/api/ams/* フロント フロントのサーバーサイドで動作するAPI
/img/ams/* フロント フロントで使用する画像
上記以外 WEKO WEKOの画面、APIなど

フロントの画面のみを表示

nginxの設定を変更することで、WEKOへのアクセスを制限する。

フロントの動作に必要なものを除き、WEKOの画面やAPIへのアクセスを制限し、フロントの画面のみにアクセスできるようにする。

nginxコンテナの/etc/nginx/conf.d/weko.confweko/nginx/weko-ams-restricted.confの内容を設定した場合、この動作となる。

更新履歴

日付 GitHubコミットID 更新内容
2025/08/29 6ee63da44c8f2e23ac73d6218ee09f23ba5edcb3 初版作成

results matching ""

    No results matching ""