kashiwagi

Data APIの利用で404となってしまう

0

初めて投稿をさせていただきます。
よろしくお願いします。

以下の環境でMTを構築・運用しています。

Amazon Linux2
nginx 1.18.0
RDS - MySQL 8.0.21
Movable Type 7 r.4706 with: Professional Pack 3.05
※AMI版ではなく自前で構築をしています。

サイトの出力は問題なく動いています。

今回、はじめてData APIをつかって、サイトの投稿一覧を取得しようとしています。
しかしながら、以下のエンドポイントへアクセスすると404 Not Foundとなってしまいます。

/pathto/mt-data-api.cgi/v4/sites/3/entries?limit=10

「Data APIの設定」は、システムを含めてすべてのサイトで「Data API のアクセスを許可」をチェックしています。
また、mt-check.cgi で確認できるcgiモジュールは不要なDBIを除いてすべていれています。

nginxのログをみても手がかりがつかめず、fcgiwrapの設定も見直し再適応しても状況は改善せず現在、手詰まりとなっています。

権限など、何か思い当たるところある方がいらっしゃいましたら、お知恵拝借したく。
何卒よろしくお願いいたします。

返信(4)

| 返信する
  • 私がその状況でしたら、mt-data-api.cgiにアクセスした時(/v4〜を書かない)に"API Version is required"というメッセージが表示されるか、/v4/sites/3/entriesがmt-data-api.cgiで処理されているか、というのを確かめると思います。
    (mt-data-api.cgiのディレクトリで
    mkdir v4/sites/3
    cd v4/sites/3
    touch entries
    でそのファイルが表示されたらNGと判断します。)

    外していたらすみません。

  • Hideki Abeさま、
    ご返答いただきありがとうございます。

    > mt-data-api.cgiにアクセスした時(/v4〜を書かない)に"API Version is required"というメッセージが表示されるか

    以下のメッセージが表示されます
    {"error":{"code":400,"message":"API Version is required"}}


    > /v4/sites/3/entriesがmt-data-api.cgiで処理されているか

    mt-data-api.cgi があるアプリケーションディレクトリに、mkdir し entries ファイルをつくってみました。
    ただ、ここからの確認方法がわかりません、、
    以下の確認方法ではなさそうであることはわかるのですが、、

    /pathto/mt-data-api.cgi/v4/sites/3/entries?limit=10
    へのアクセスは状況かわらず

    /pathto/v4/sites/3/entries
    へのアクセスはentriesファイルがダウンロードされます

  • kashiwagiさま
    ご確認ありがとうございます。
    私がmkdirの内容を書き間違えたようです。すみません。

    いずれにしても、URLが.cgiで終わらない、mt-data-api.cgi/v4とかになった時CGIで処理されていない(静的なファイルを探しに行っている)のかなと考えておりました。
    例えば location ~ \.cgi$ になっていて mt-data-api.cgi/v4 にはマッチしないとかです。

  • Abeさま、
    あたりです!
    まさにそのとおりでした!!
    location ~ \.cgi(/|$)
    として無事に取得することができました。
    本当に助かりました。
    ありがとうございましたmm

返信する


カテゴリグループ

106 23

最新のトピック: test (2019年5月29日 sato)

フォーラムカテゴリー

21 76

最新のトピック: 公開終了日の取り消し (2013年10月18日 gsk)

408 1109

最新のトピック: CaptchaSourceImageBaseの場所をmt-static以外に指定したい (2021年2月18日 css)

OpenID対応しています OpenIDについて