URL にindex.html を追加しないと React ビルドが正しく動作しません
P粉216203545
P粉216203545 2023-09-01 11:25:58
0
1
400

React JS アプリケーションにハッシュ ルーティングを使用しています。アプリケーションはローカル環境で正常に動作します。

たとえば、https://stackoverflow.com/posts/ をアプリケーションの URL にする必要がありますが、機能せず、https://stackoverflow.com/posts/index.html を使用する必要があります。仕事。

デプロイ後、ビルド ファイルでデフォルトの index.html ファイルを提供するのではなく、「download」という名前の空のファイルをダウンロードしていることに気付きました。サーバー上でビルドを実行するには、S3 と CloudFront アーキテクチャを使用します。

現時点では、HASH ルーティングが誤動作しているのか、それとも AWS のデプロイメントに問題があるのかわかりません。

React JS を使用したコード スニペット

React を 'react' からインポートします。 「react-dom」から ReactDOM をインポートします。 import { Provider } から 'react-redux'; './redux/store' からストアをインポートします。 「./App」からアプリをインポートします。 reportWebVitals を './reportWebVitals' からインポートします。 import { HashRouter } から 'react-router-dom/cjs/react-router-dom'; ReactDOM.render( <プロバイダストア={ストア}> <ハッシュルーター> <アプリ/>   document.getElementById('ルート') );

package.json コンテンツの一部

{ 「名前」: 「ロレミプサム」、 「バージョン」: 「0.1.0」、 「プライベート」: true、 「ホームページ」: 「/loremipsum/」 }

P粉216203545
P粉216203545

全員に返信 (1)
P粉515066518

サブディレクトリに展開する必要がありますか?その場合は、package.jsonファイルの内容を変更して、index.htmlファイルを基準にしてリソースが提供されるようにする必要があります。

リーリー

これにより、http://www.fooでホストされているアプリケーションをhttp://www.foo/relativepathまたはhttps に移動できるようになります。 //www.foo/bar1/bar2/リビルドする必要はありません。

また、PUBLIC_URLをオーバーライドして、ファイルをホストするドメインとサブディレクトリを含める必要があります。

いいねを押す+0
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート
    私たちについて 免責事項 Sitemap
    PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!