Rumah  >  Soal Jawab  >  teks badan

Aplikasi bertindak balas menggunakan api NET7 - menulis semula URL pada tapak

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

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粉752826008P粉752826008254 hari yang lalu295

membalas semua(1)saya akan balas

  • P粉564301782

    P粉5643017822024-01-11 10:54:05

    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.

    balas
    0
  • Batalbalas