Struktur direktori ASP.NET Core

Direktori publikasi berisi aset aplikasi yang dapat disebarkan yang diproduksi oleh perintah penerbitan dotnet. Direktori berisi:

  • File aplikasi
  • File konfigurasi
  • Aset statis
  • Paket
  • Runtime (hanya penyebaran mandiri)
Tipe Aplikasi Struktur Direktori
Framework-dependent Executable (FDE)
  • terbitkan†
    • Tampilan† aplikasi MVC; jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME} {. Ekstensi EXTENSION}.exe di Windows, tidak ada ekstensi di macOS atau Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)
    • createdump (utilitas linux createdump)
    • *.so (pustaka objek bersama Linux)
    • *.a (arsip macOS)
    • *.dylib (pustaka dinamis macOS)
Penyebaran Mandiri (SCD)
  • terbitkan†
    • Tampilan† aplikasi MVC, jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME} {. EKSTENSI} .exe di Windows, tidak ada ekstensi di macOS atau Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)

†Indikasikan direktori

Direktori penerbitan mewakili jalur akar konten, juga disebut jalur dasar aplikasi, dari penyebaran. Apa pun nama yang diberikan kepada direktori penerbitan aplikasi yang disebarkan di server, lokasinya berfungsi sebagai jalur fisik server ke aplikasi yang dihosting.

Direktori wwwroot , jika ada, hanya berisi aset statis.

Sumber Daya Tambahan:

Direktori publikasi berisi aset aplikasi yang dapat disebarkan yang diproduksi oleh perintah penerbitan dotnet. Direktori berisi:

  • File aplikasi
  • File konfigurasi
  • Aset statis
  • Paket
  • Runtime (hanya penyebaran mandiri)
Tipe Aplikasi Struktur Direktori
Framework-dependent Executable (FDE)
  • terbitkan†
    • Tampilan† aplikasi MVC; jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME} {. Ekstensi EXTENSION}.exe di Windows, tidak ada ekstensi di macOS atau Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}. Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)
    • createdump (utilitas linux createdump)
    • *.so (pustaka objek bersama Linux)
    • *.a (arsip macOS)
    • *.dylib (pustaka dinamis macOS)
Penyebaran Mandiri (SCD)
  • terbitkan†
    • Tampilan† aplikasi MVC, jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME} {. EKSTENSI} .exe di Windows, tidak ada ekstensi di macOS atau Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}. Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)

†Indikasikan direktori

Direktori penerbitan mewakili jalur akar konten, juga disebut jalur dasar aplikasi, dari penyebaran. Apa pun nama yang diberikan kepada direktori penerbitan aplikasi yang disebarkan di server, lokasinya berfungsi sebagai jalur fisik server ke aplikasi yang dihosting.

Direktori wwwroot , jika ada, hanya berisi aset statis.

Sumber Daya Tambahan:

Direktori publikasi berisi aset aplikasi yang dapat disebarkan yang diproduksi oleh perintah penerbitan dotnet. Direktori berisi:

  • File aplikasi
  • File konfigurasi
  • Aset statis
  • Paket
  • Runtime (hanya penyebaran mandiri)
Tipe Aplikasi Struktur Direktori
Framework-dependent Executable (FDE)
  • terbitkan†
    • Tampilan† aplikasi MVC; jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME} {. EKSTENSI} .exe di Windows, tidak ada ekstensi di macOS atau Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}. Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)
    • createdump (utilitas linux createdump)
    • *.so (pustaka objek bersama Linux)
    • *.a (arsip macOS)
    • *.dylib (pustaka dinamis macOS)
Penyebaran Mandiri (SCD)
  • terbitkan†
    • Tampilan† aplikasi MVC, jika tampilan tidak dikombinasikan sebelumnya
    • Aplikasi Pages† MVC atau Razor Pages, jika halaman tidak dikombinasikan sebelumnya
    • wwwroot†
    • *.dll file
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}.exe
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}. Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (penyebaran IIS)

†Indikasikan direktori

Direktori penerbitan mewakili jalur akar konten, juga disebut jalur dasar aplikasi, dari penyebaran. Apa pun nama yang diberikan kepada direktori penerbitan aplikasi yang disebarkan di server, lokasinya berfungsi sebagai jalur fisik server ke aplikasi yang dihosting.

Direktori wwwroot , jika ada, hanya berisi aset statis.

Membuat folder Log berguna untuk ASP.NET pengelogan debug yang ditingkatkan Modul Inti. Folder di jalur yang disediakan untuk <handlerSetting> nilai tidak dibuat oleh modul secara otomatis dan harus ada sebelumnya dalam penyebaran untuk memungkinkan modul menulis log debug.

Direktori Log dapat dibuat untuk penyebaran menggunakan salah satu dari dua pendekatan berikut:

  • Tambahkan elemen berikut <Target> ke file proyek:

    <Target Name="CreateLogsFolder" AfterTargets="Publish">
       <MakeDir Directories="$(PublishDir)Logs" 
                Condition="!Exists('$(PublishDir)Logs')" />
       <WriteLinesToFile File="$(PublishDir)Logs\.log" 
                         Lines="Generated file" 
                         Overwrite="True" 
                         Condition="!Exists('$(PublishDir)Logs\.log')" />
    </Target>
    

    Elemen <MakeDir> membuat folder Log kosong dalam output yang diterbitkan. Elemen menggunakan PublishDir properti untuk menentukan lokasi target untuk membuat folder. Beberapa metode penyebaran, seperti Web Deploy, melewati folder kosong selama penyebaran. Elemen <WriteLinesToFile> menghasilkan file di folder Log , yang menjamin penyebaran folder ke server. Pembuatan folder menggunakan pendekatan ini gagal jika proses pekerja tidak memiliki akses tulis ke folder target.

  • Buat direktori Log secara fisik di server dalam penyebaran.

Direktori penyebaran memerlukan izin Baca/Jalankan. Direktori Log memerlukan izin Baca/Tulis. Direktori tambahan tempat file ditulis memerlukan izin Baca/Tulis.

Sumber Daya Tambahan: