Bagikan melalui


Struktur direktori ASP.NET Core

Catatan

Ini bukan versi terbaru dari artikel ini. Untuk rilis saat ini, lihat versi .NET 9 dari artikel ini.

Peringatan

Versi ASP.NET Core ini tidak lagi didukung. Untuk informasi selengkapnya, lihat Kebijakan Dukungan .NET dan .NET Core. Untuk rilis saat ini, lihat versi .NET 8 dari artikel ini.

Penting

Informasi ini berkaitan dengan produk pra-rilis yang mungkin dimodifikasi secara substansial sebelum dirilis secara komersial. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.

Untuk rilis saat ini, lihat versi .NET 9 dari artikel ini.

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†
    • *file .dll
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EKSTENSI}.exe ekstensi 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†
    • *file .dll
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EKSTENSI} .exe ekstensi 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†
    • *file .dll
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EKSTENSI}.exe ekstensi 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†
    • *file .dll
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EKSTENSI} .exe ekstensi 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†
    • *file .dll
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EKSTENSI} .exe ekstensi 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†
    • *file .dll
    • {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: