Elemen Modul Elemen <>
Gambaran Umum
Elemen mendefinisikan <modules>
modul kode asli dan modul kode terkelola yang terdaftar untuk aplikasi. Sebagai bagian dari pemrosesan alur permintaan Internet Information Services (IIS), IIS memanggil setiap modul yang <modules>
tercantum dalam elemen pada setiap permintaan. Anda biasanya menggunakan modul untuk menerapkan fungsionalitas yang disesuaikan, seperti keamanan, statistik, dan pengelogan, atau pemrosesan konten yang disesuaikan, seperti menambahkan header atau footer yang disesuaikan.
Elemen <modules>
berisi kumpulan <add>
elemen. Setiap elemen menentukan modul yang diaktifkan untuk aplikasi. Saat mengaktifkan modul, Anda mengizinkannya untuk menyediakan layanannya untuk aplikasi tertentu.
Jika Anda ingin mengaktifkan modul asli, Anda harus menginstalnya terlebih dahulu di server. Untuk informasi selengkapnya, lihat <elemen globalModules> .
Anda tidak perlu menginstal modul terkelola; Anda dapat mengaktifkannya secara langsung untuk setiap aplikasi. Ini memungkinkan aplikasi untuk menyertakan modul terkelola mereka langsung dalam aplikasi dengan mendaftarkannya dalam file Web.config aplikasi, dan dengan menyediakan implementasi di direktori /BIN atau /App_Code.
Kompatibilitas
Versi | Catatan |
---|---|
IIS 10.0 | Elemen <modules> tidak dimodifikasi dalam IIS 10.0. |
IIS 8.5 | Elemen <modules> tidak dimodifikasi dalam IIS 8.5. |
IIS 8.0 | Elemen <modules> tidak dimodifikasi dalam IIS 8.0. |
IIS 7.5 | Elemen <modules> tidak dimodifikasi dalam IIS 7.5. |
IIS 7.0 | Elemen ini <modules> diperkenalkan di IIS 7.0. |
IIS 6.0 | T/A |
Siapkan
Elemen <modules>
ini disertakan dalam penginstalan default IIS 7.
Bagaimana Caranya
Cara menambahkan modul terkelola ke aplikasi
Buka Pengelola Layanan Informasi Internet (IIS):
Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:
- Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Pengelola Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows 8 atau Windows 8.1:
- Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
- Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:
- Pada bilah tugas, klik Mulai, arahkan ke Alat Administratif, lalu klik Pengelola Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Vista atau Windows 7:
- Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
- Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Di panel Koneksi , perluas nama server, perluas Situs, lalu masuk ke situs Web atau aplikasi tempat Anda ingin menambahkan modul terkelola.
Di panel Beranda , klik dua kali Modul.
Di panel Tindakan, klik Tambahkan Modul Terkelola.
Dalam kotak dialog Tambahkan Modul Terkelola, masukkan nama modul terkelola dalam kotak Nama, lalu masukkan atau pilih jenis modul .NET Framework sepenuhnya memenuhi syarat dalam kotak Jenis.
Pilih opsi Panggil hanya untuk permintaan ASP.NET aplikasi atau handler terkelola jika Anda ingin modul hanya merespons permintaan terkelola.
Klik OK.
Konfigurasi
Anda mengonfigurasi <modules>
elemen di tingkat server dalam file ApplicationHost.config dan pada tingkat aplikasi dalam file Web.config.
Atribut
Atribut | Deskripsi |
---|---|
runAllManagedModulesForAllRequests |
Nilai Boolean opsional. Benar jika semua modul terkelola dapat memproses semua permintaan, bahkan jika permintaannya bukan untuk konten terkelola; jika tidak, salah. Catatan: Di situs web ASP.NET, nilai runAllManagedModulesForAllRequests sebelumnya harus diatur ke true untuk mendukung perutean. Namun, setelah IIS 7 diperbarui dengan Paket Layanan, nilai runAllManagedModulesForAllRequests dapat diatur ke false atau dihilangkan saat bekerja dengan perutean ASP.NET. Untuk informasi selengkapnya, lihat perutean ASP.NET di situs web MSDN.Nilai defaultnya adalah false . |
runManagedModulesForWebDavRequests |
Nilai Boolean opsional. Benar jika modul terkelola dapat memproses permintaan WebDAV; jika tidak, salah. Nilai defaultnya adalah false . |
Elemen Anak
Elemen | Deskripsi |
---|---|
add |
Elemen opsional. Menambahkan modul ke koleksi modul. |
clear |
Elemen opsional. Menghapus semua referensi ke modul dari koleksi modul. |
remove |
Elemen opsional. Menghapus referensi ke modul dari koleksi modul. |
Sampel Konfigurasi
Contoh mengonfigurasi modul untuk aplikasi Web yang berjalan dalam mode Terintegrasi IIS 7.
<configuration>
<system.webServer>
<modules>
<add name="Header" type="Contoso.ShoppingCart.Header"/>
</modules>
</system.webServer>
</configuration>
Kode Sampel
Catatan
Contoh dalam dokumen ini menggambarkan menggunakan rakitan kode terkelola yang telah disimpan di .NET Global Assembly Cache (GAC). Sebelum menggunakan kode dalam contoh ini untuk menyebarkan rakitan Anda sendiri, Anda perlu mengambil informasi perakitan dari GAC. Untuk melakukannya, gunakan langkah-langkah berikut:
- Di Windows Explorer, buka jalur C:\Windows\assembly Anda, di mana C: adalah drive sistem operasi Anda.
- Temukan assembly Anda.
- Klik kanan rakitan dan klik Properti.
- Salin nilai Budaya ; misalnya: Netral.
- Salin nomor Versi ; misalnya: 1.0.0.0.
- Salin nilai Token Kunci Publik ; misalnya: 426f62526f636b73.
- Klik Batalkan.
Contoh kode berikut mengaktifkan modul terkelola untuk situs Web bernama Contoso. Properti nama menentukan nama CartHeader untuk modul, properti jenis menentukan jenis terkelola untuk modul, properti preCondition menentukan bahwa IIS memanggil modul hanya untuk permintaan terkelola.
AppCmd.exe
appcmd.exe set config "Contoso" -section:system.webServer/modules /+"[name='CartHeader',type='Contoso.ShoppingCart.Header',preCondition='managedHandler']"
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetWebConfiguration("Contoso");
ConfigurationSection modulesSection = config.GetSection("system.webServer/modules");
ConfigurationElementCollection modulesCollection = modulesSection.GetCollection();
ConfigurationElement addElement = modulesCollection.CreateElement("add");
addElement["name"] = @"CartHeader";
addElement["type"] = @"Contoso.ShoppingCart.Header";
addElement["preCondition"] = @"managedHandler";
modulesCollection.Add(addElement);
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetWebConfiguration("Contoso")
Dim modulesSection As ConfigurationSection = config.GetSection("system.webServer/modules")
Dim modulesCollection As ConfigurationElementCollection = modulesSection.GetCollection
Dim addElement As ConfigurationElement = modulesCollection.CreateElement("add")
addElement("name") = "CartHeader"
addElement("type") = "Contoso.ShoppingCart.Header"
addElement("preCondition") = "managedHandler"
modulesCollection.Add(addElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso";
var modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso");
var modulesCollection = modulesSection.Collection;
var addElement = modulesCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "CartHeader";
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header";
addElement.Properties.Item("preCondition").Value = "managedHandler";
modulesCollection.AddElement(addElement);
adminManager.CommitChanges();
Vbscript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso"
Set modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso")
Set modulesCollection = modulesSection.Collection
Set addElement = modulesCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "CartHeader"
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header"
addElement.Properties.Item("preCondition").Value = "managedHandler"
modulesCollection.AddElement addElement
adminManager.CommitChanges()
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk