HTTPステータスコード
アプリケーションのデプロイ後、アプリケーションのURLにアクセスすると、サーバーまたはクライアントの問題を示すHTTPステータスコードが表示されることがあります。以下、各HTTPステータスコードの解決方法をご紹介します。
403エラー
403 Forbidden
You don’t have permission to access this resource.(403 Forbidden
このリソースにアクセスする権限がありません)
このエラーは、通常、以下のいずれかが原因で発生します。
- ファイルのパーミッションが正しくない
- .htaccessファイル内の構成が正しくない
- Apacheの設定において、ワークスペースのパスに誤りがある
問題が特定できない場合は、以下を確認し、それでも問題が解決しない場合には、カスタマーサポートまでご連絡ください。
ファイルパーミッション
ファイルのパーミッションは、誰がどのような操作をできるかを制御するものです。
- Read/読み取り:ファイルの中身を見たり、ディレクトリ内のファイルを見たりします。
- Write/書き込み:ファイルを修正したり、ディレクトリ内でファイルを追加したり削除したりします。
- Execute/実行:ファイルを実行したり、それをスクリプトとして実行したり、ディレクトリにアクセスして機能やコマンドを実行したりします。
各ファイルとディレクトリには、3桁の数字で示される独自のファイルパーミッションが設定されます。各数字は、上記に示した各カテゴリ(読み取り、書き込み、実行)の許可レベルを示します。一般的には以下のパーミッションを推奨しますが、アプリケーションによっては変更が必要になる場合もあります(例えば、アプリケーションによってはファイルのパーミッションを755や750に設定することになります)。
- ファイル:644または640
- ディレクトリ:755または750
アプリケーションのファイルパーミッションが正しく設定されていることを確認してください。不明な場合は、アプリケーション、言語、またはフレームワークのドキュメントを確認することをお勧めします。
.htaccessファイル
アプリケーションのコードに.htaccessファイルが含まれている場合、その中の設定ディレクティブが正しいかどうかを確認してください。例えば、Rewrite
またはFilesMatch
ディレクティブが誤って設定されていると、403 エラーが発生することがあります。
ワークスペースのパス
アプリケーションでビルドパックとApacheウェブサーバーを使用中に、Apacheの設定でワークスペースのパスが正しくないと、403エラーが発生することがあります。アプリケーションのログには、以下のようなエラーが表示される可能性があります。
python: can't open file '/workspace/server.py': [Errno 2] No such file or directory
このエラーは、ビルドパックが実行しようとしているコマンドが存在しないことを示しています。この問題を解決するには、Apacheの設定を変更して(「/workspace/」などの代わりに)「/workspace/web/」を使用するようにしてください。
503エラー
アプリケーションのデプロイに成功した後、アプリケーションのコードや設定内に問題がある状態でアプリケーションのURLにアクセスしようとすると、以下のエラーが表示されることがあります。
503 Service Temporarily Unavailable(一時的にサービスが利用できません)
問題が特定できない場合は、以下をご確認ください。
ワークスペースのパス
アプリケーションでビルドパックとApacheウェブサーバーを使用中に、Apacheの設定でワークスペースのパスが正しくないと、503エラーが発生することがあります。アプリケーションのログには、以下のようなエラーが表示される可能性があります。
python: can't open file '/workspace/server.py': [Errno 2] No such file or directory
このエラーは、ビルドパックが実行しようとしているコマンドが存在しないことを示しています。この問題を解決するには、Apacheの設定を変更して(「/workspace/」などの代わりに)「/workspace/web/」を使用するようにしてください。
注)この問題は、ランタイムログにoom-killed
エラーとして表れることもあります(ただし、oom-killed
エラーの唯一の原因とは限りません)。
設定の問題を確認し、修正してもエラーが続くようであれば、ロールアウトに失敗した場合のトラブルシューティングをご覧ください。この手順を実行してもエラーが発生する場合には、カスタマーサポートにお問い合わせください。