php Editor Banana は、Go 言語を使用して Web アプリケーションを開発するときに、よくある問題に遭遇することがあることを発見しました。Web エンドポイントにアクセスしようとすると、404 エラーが表示され、静的なindex.htmlファイルが見つかりません。この質問は開発者、特に初心者にとって混乱を招く可能性があります。では、この問題をどのように解決すればよいでしょうか?次に、この問題をスムーズに解決するための解決策を詳しく紹介します。
これは私のコードです:
リーリー最上位フォルダーは microservices
で、go ワークスペースとして設定されます。この Web サービスは、数多くある Web サービスのうちの 1 つになります。これは次のフォルダーにあります:
私は最上位のマイクロサービス フォルダーにいます。go run ./frontend/cmd/web
で開始します。エラーもなく正常に起動します。しかし、Chrome にアクセスして http://localhost:3001
と入力すると、「404 Page Not Found」が表示されます。 http://localhost:3001/index.html
でも 404 Page Not Found が表示されます。 Go を学んだばかりですが、./static
フォルダーが見つからない理由がわかりません。
コマンドによると、パスは ./static ではなく ./frontend/cmd/web/static である必要があります。これは移植性がありません。作業ディレクトリに応じてパスが変わります。
静的ディレクトリの埋め込みを検討してください。それ以外の場合は、パスを構成可能にする必要があります (フラグ、環境変数など)。 埋め込みの欠点は、静的ファイルに変更を加えた後にプログラムを再構築する必要があることです。
ハイブリッド アプローチを使用することもできます。フラグ (またはその他) が設定されている場合は、それを使用してディスクからサービスを提供し、それ以外の場合は組み込みファイル システムを使用します。このフラグは開発中に便利で、埋め込みファイル システムにより、プログラム バイナリをコピーするだけで済むため、展開が簡単になります。
リーリー以上がGo Web エンドポイントが静的な Index.html ファイルを見つけることができませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。