Microsoftサーバーにアップロードしたphp Facebookアプリケーションがあります。アプリケーションを実行すると、このエラーが発生します。誰かがこれの原因を知っていますか?
405 - このページへのアクセスに使用される HTTP 動詞は許可されていません。無効なメソッド (HTTP 動詞) を使用してアクセスしようとしたため、お探しのページを表示できません。
Microsoftサーバーにアップロードしたphp Facebookアプリケーションがあります。アプリケーションを実行すると、このエラーが発生します。誰かがこれの原因を知っていますか?
405 - このページへのアクセスに使用される HTTP 動詞は許可されていません。無効なメソッド (HTTP 動詞) を使用してアクセスしようとしたため、お探しのページを表示できません。
IIS または Apache を使用している場合でも、静的な html ページをランディング ページとして使用していると思います。デフォルトでは、Web サーバーは .html ページで POST または GET 動詞を許可していません。Facebook は POST/GET 経由でページを呼び出します。動詞
解決策は、ページの名前を.phpまたは.aspxに変更することです。これで問題 ありません:)
Facebook アプリのコントロール パネルで、フォルダー名のみを指定する場合は、指定した URL の末尾にスラッシュがあることを確認してください。
すなわち
ページタブの URL: http://mypagetabserver.com/custom_tab/
これは文字通り、 http コンテンツにアクセスするときに間違ったhttp 動詞を使用しようとしていることを意味します。消費するために使用する必要がある Web サービスの多くのコンテンツPOST
。間違った http 動詞を使用して facebook API にアクセスしようとしていると思われます。
私も数時間、これの上に髪を引っ張っています。fakeartistは正しいように見えますが、ファイル拡張子を.htmから.phpに変更したところ、Facebookで自分のページを表示できるようになりました。拡張子を.aspxに変更した場合にも機能します。おそらく、サーバー側の拡張子である必要があります(.jspでは試していません)。
デフォルトファイルの名前を変更してみてください。私の場合、IIS7.5 への最近の移行で 405 エラーが発生しました。index.aspx を default.aspx に変更したところ、すぐに機能しました。
これらの行を web.config に追加できます。
<system.webServer>
<modules>
<remove name="WebDAVModule" />
</modules>
<handlers>
<remove name="WebDAV" />
</handlers>
</system.webServer>