Aplikasi bertindak balas menggunakan api NET7 - menulis semula URL pada tapak
P粉752826008
P粉752826008 2024-01-10 17:38:54
0
1
327

Saya cuba mengehoskan aplikasi React dengan api NET7 di tapak IIS. Terdapat struktur fail seperti ini dalam folder akar

  • index.html
  • Fail lain js/css
  • api/my-app.exe (mengandungi semua perduaan api .NET dalam api subfolder)

Api berfungsi kerana saya meminta /api/status kaedah pemeriksaan kesihatan dan ia mengembalikan 200. Tetapi apabila saya meminta /index.html saya mendapat 404 (Tidak Ditemui) .

Adakah anda tahu bagaimana saya harus menyediakan peraturan penulisan semula atau sebaliknya mengkonfigurasinya untuk mendapatkan fail index.html

Ini web saya.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath=".\api\my-app.exe" arguments=".\api\my-app.dll" stdoutLogEnabled="true" stdoutLogFile=".\iis-logs\" hostingModel="OutOfProcess" />
        <directoryBrowse enabled="false" />
        <httpErrors errorMode="DetailedLocalOnly" existingResponse="Auto" />
        
        <rewrite>
            <rules>
                <clear />
                <rule name="Stop process React routes" stopProcessing="true">
        TODO: how to write rule to get index.html file ??
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

P粉752826008
P粉752826008

membalas semua(1)
P粉564301782

Anda boleh cuba mengubah suai peraturan penulisan semula dalam fail web.config. Begini cara untuk menyediakan peraturan tulis semula untuk menyampaikan fail index.html aplikasi React anda dan sumber statik lain:

<rewrite>
         <rules>
             <rule name="Serve React App" stopProcessing="true">
                 <match url=".*" />
                 <conditions logicalGrouping="MatchAll">
                     <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                     <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                 </conditions>
                 <action type="Rewrite" url="/index.html" />
             </rule>
         </rules>
     </rewrite>

Anda perlu melaraskan laluan dan konfigurasi berdasarkan struktur dan keperluan projek khusus anda.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan