Facebookページのページタブ(IFrameタブ)で「Method Not Allowed」になる不具合の対処
すでにご存知の方も多いと思われますが、Facebookページのページタブ(IFrameタブ)で「Method Not Allowed」になる不具合の対処について情報展開します。
1.問題点
Facebookページのページタブ(IFrameタブ)のファイルの拡張子に「.html」で指定すると、ページタブを表示したときに「Method Not Allowed」というエラーになる場合があります。
「Method Not Allowed」は、「対象URLに対してメソッドが許可されていない」という意味で、その下にある詳細メッセージよりPOSTメソッドが許可されていないのが原因のようです。
この問題はレンタルサーバによって異なるようですが、今回はさくらインターネットでしか確認できていないので真偽は不明です。
2.対処方法1
拡張子を「.php」に変更します。
アプリの「ページタブ」→「Page Tab URL」や「Secure Page Tab URL」にファイル名まで設定している場合は、その項目もあわせて修正してください。
「.cgi」に変更しても動作するようになりますが、ファイルの内容も変更しないと正常に表示されないため、「.php」に変更するのが無難でしょう。
なお、レンタルサーバによって動作が異なるようです。
3.対処方法2
IFrameタブページと同じディレクトリか上位のディレクトリに、.htaccessを作成し、以下のAddHandlerディレクティブの1行を設定します。
AddHandler application/x-httpd-php .php .html
ディレクトリに.htmlファイルしかないのであれば、以下でもOKです。
AddHandler application/x-httpd-php .html
AddTypeディレクティブでも大丈夫みたいです。
AddType application/x-httpd-php .php .html
これで.htmlファイルを.phpとして処理できるようになります。サーバによって動作が異なるかもしれません。
4.参考サイト
参考サイトは以下です。ありがとうございました。
- iframeでFacebookページ作成する際に最初にすべきことは?
- Method Not Allowed
- 405 Method Not Allowedの原因と対処法
- AddHandler ディレクティブ
- AddType ディレクティブ
- Facebookのテキスト投稿に背景色をつける方法
- Facebookで過去の投稿を探す方法
- Facebookアプリのアクセストークンの有効期限を確認する方法
- Facebookアプリのアクセストークンの有効期限を延長する方法
- Facebookページの投稿をGraph APIで取得する方法
- Facebookでハッシュタグを利用する方法
- Facebookのプロフィール写真変更をタイムラインに表示させない方法
- Facebookのテストユーザーでログイン画面からログインする方法
- Facebookアプリのテストユーザー作成方法(2016年版)
- Facebookの友達リストに「共通の友達」を表示する方法
- ウェブサイトにFacebookページのタイムラインを表示する方法
- Facebookで誕生日は知らせたいけどタイムラインに書き込んでほしくない場合の設定
- iPhone版:Facebookページの管理者が個人アカウントでFacebookページの投稿に「いいね!」をする方法
- Facebookページの管理者が個人アカウントでFacebookページの投稿に「いいね!」をする方法
- Facebookでメールアドレス検索されないようにする方法