Mulai Menggunakan Manajer IIS di IIS
oleh Tim IIS, Tobin Titus
Kompatibilitas
Versi | Catatan |
---|---|
IIS 7.0 dan yang lebih baru | Fitur yang dijelaskan dalam artikel ini diperkenalkan di IIS 7.0. |
IIS 6.0 dan yang lebih lama | Fitur yang dijelaskan dalam artikel ini tidak didukung sebelum IIS 7.0. |
Pendahuluan
IIS 7.0 dan yang lebih baru memiliki antarmuka pengguna baru dari versi IIS sebelumnya: Manajer IIS. Artikel ini menjelaskan tampilan dan nuansa, delegasi fitur, interaksi dengan konfigurasi, dan jarak jauh. Perhatikan bahwa beberapa versi IIS mungkin tidak memiliki beberapa fungsionalitas/fitur yang dibahas dalam dokumen ini.
Mengapa harus berubah? Berikut adalah beberapa alasan utama:
- IIS dan ASP.NET bekerja sama: Pengguna IIS 6.0 mengklik kanan pada situs web, pilih "Semua Properti", dan mendapatkan dialog dengan sejumlah tab untuk pengaturan yang berbeda. Dengan IIS 7.0 ke atas, IIS Manager perlu menampilkan konfigurasi untuk fitur baru seperti Penembolokan Output, Pelacakan Permintaan Gagal, dan Pemfilteran Permintaan, serta konfigurasi untuk bagian ASP.NET dan relevan dari .NET Framework. Fungsionalitas baru akan membutuhkan lebih banyak tab baru, opsi yang tidak dapat diterima.
- Administrasi yang Didelegasikan: Memindahkan konfigurasi kami dari metabase ke sistem konfigurasi .NET berarti bahwa pengguna dapat, jika diizinkan, mengatur konfigurasi IIS dalam file web.config. Misalnya, konfigurasi untuk aplikasi
http://www.contoso.com/sales
dapat ditulis ke file konfigurasi root applicationHost.config, ke file web.config situshttp://www.contoso.com/
, atau langsung ke file web.config aplikasi. Manajer IIS baru harus: 1) memungkinkan administrator untuk mengontrol konfigurasi yang diizinkan dalam file web.config, 2) menunjukkan administrator/pengguna tempat konfigurasi sedang ditulis. Manajer IIS yang lebih lama tidak terserah tantangan ini. - Alasan Teknik: Perangkat lunak memiliki umur simpan. Waktu menghadirkan teknologi baru, persyaratan baru, konvensi baru, dan ada titik di mana memperbarui perangkat lunak yang ada menjadi lebih intensif tenaga kerja dan mahal yang membangun kembali perangkat lunak. Manajer IIS mendekati akhir masa simpannya.
Ada lagi yang perlu diketahui? Setelah kami memutuskan untuk menulis ulang Manajer IIS, kami mengambil kesempatan untuk meningkatkan sejumlah cara utama:
- Ekstensibilitas: Memperpanjang IIS 6.0 versi IIS Manager sangat sulit. Manajer IIS baru membuatnya jauh lebih mudah untuk menambahkan halaman fitur, simpul tampilan pohon, dan item menu; semua menggunakan kode terkelola dan WinForms. Ekstensi Manajer IIS baru secara otomatis terdeteksi dan diunduh oleh klien Manajer IIS jarak jauh yang terhubung ke server.
- Administrasi Jarak Jauh: Administrasi jarak jauh dilakukan melalui HTTPS, membuatnya ramah firewall dan lebih mudah dikelola. Layanan Manajemen Web (WMSVC) adalah komponen yang dapat diinstal secara opsional yang memungkinkan administrasi jarak jauh.
- Tampilan dan Nuansa Baru: Manajer IIS memerlukan model yang lebih dapat diskalakan untuk mengekspos pengaturan, dan tampilan daftar fitur yang dihasilkan menyerupai Panel Kontrol. Tampilan daftar dapat diurutkan, dikelompokkan, dan dilihat dengan cara yang berbeda, semuanya membuatnya lebih mudah untuk menemukan apa yang Anda cari. Navigasi Manajer IIS juga telah menggunakan nuansa yang lebih mirip browser dengan bilah alamat ala Windows Explorer.
Catatan
Dokumen ini ditulis untuk Windows Server 2008. Windows Vista® mungkin tidak memiliki beberapa fungsionalitas/fitur yang dibahas dalam dokumen ini.
Tampilan dan Nuansa Baru
Layanan Informasi Internet (IIS) Manager telah memiliki navigasi jenis Back/Forward dalam rilis sebelumnya, dan Manajer IIS baru mengambil ini lebih jauh dengan menambahkan bilah alamat yang berfungsi seperti Windows Explorer.
Gambar 1: Manajer IIS Baru
Halaman Beranda
Halaman Beranda akan menjadi sangat akrab segera setelah Anda mulai menggunakan Manajer IIS. Daftar fitur di tengah dapat diurutkan menurut nama atau deskripsi fitur, dikelompokkan menurut area atau kategori, dan ditampilkan dalam tata letak yang berbeda.
Gambar 2: Pengelompokan di Manajer IIS
Cakupan Fitur
Server, situs, aplikasi, direktori virtual, dan node folder di tampilan pohon semuanya menampilkan Halaman Beranda dengan daftar fitur. Sebagian besar fitur muncul di Halaman Beranda untuk semua simpul ini, tetapi ada pengecualian.
Fitur-fitur ini hanya muncul di Halaman Beranda server karena merupakan konfigurasi, data, atau informasi di seluruh server:
- Pembatasan ISAPI dan CGI
- Sertifikat (tetapi tidak muncul di koneksi jarak jauh)
- Layanan Manajemen (tetapi tidak muncul di koneksi jarak jauh)
- Proses Pekerja
Fitur-fitur ini muncul di mana-mana kecuali Halaman Beranda server karena mereka adalah konfigurasi aplikasi dan tidak logis di tingkat server, atau karena mereka hanya bekerja lebih baik seperti itu (SSL):
- Pengguna Keanggotaan
- Peran Keanggotaan
- Profil
- SSL
Fitur yang terkait dengan delegasi memiliki aturan khusus tempat fitur tersebut muncul:
- Delegasi Fitur: selalu muncul hanya untuk simpul akar koneksi
- Administrator: hanya muncul untuk simpul Server, Situs, dan Aplikasi
Tata Letak Halaman Fitur
Ada tiga jenis halaman di IIS
Halaman Daftar
Halaman daftar berisi daftar. Sebagian besar halaman daftar memungkinkan Anda mengelompokkan menurut nilai dalam satu atau beberapa kolom. Halaman daftar utama, seperti Situs dan Kumpulan Aplikasi, memungkinkan Anda memfilter entri daftar dengan mencari di kolom daftar untuk entri yang cocok dengan string pencarian.
Gambar 3: Halaman Daftar Manajer IIS
Tugas Tambahkan/Edit/Hapus di panel tugas memungkinkan Anda memanipulasi konten daftar. Pengaturan fitur yang tidak spesifik untuk entri daftar, misalnya menentukan bahwa kesalahan kustom harus ditimpa oleh kesalahan terperinci untuk permintaan lokal, umumnya dikonfigurasi melalui tugas Edit Pengaturan Fitur... .
Gambar 4: Tindakan Manajer IIS
Kisi Properti
Halaman kisi properti memperlihatkan kisi properti terkait. Pemilih Tampilan di bagian atas kisi properti memungkinkan Anda memilih apakah Anda ingin melihat nama properti yang mudah diingat, nama properti konfigurasi, atau keduanya. Cuplikan layar di bawah ini menunjukkan kedua nama.
Gambar 5: Kisi Properti di Manajer IIS
Dialog
Halaman dialog memiliki kotak centang, kotak teks, dan tombol radio, dan umumnya merupakan jenis halaman yang paling dikenal. Gunakan Terapkan/Batal di panel tugas untuk menyimpan perubahan.
Tampilan Konten
Tampilan Konten adalah tampilan baca-saja; Anda tidak dapat membuat, menyalin, memindahkan, atau menghapus file atau folder dalam tampilan ini. Anda bisa masuk ke Tampilan Konten dengan mengklik "Tampilan Konten" di pengalih Tampilan Fitur/Tampilan Konten di bagian bawah panel tengah Manajer IIS, atau dengan mengklik kanan simpul tampilan pohon dan memilih "Beralih ke Tampilan Konten".
Satu-satunya cara untuk mengatur konfigurasi untuk file adalah dengan beralih ke Tampilan Konten, memilih file, dan klik "Beralih ke Tampilan Fitur" di menu klik kanan atau di panel tugas.
Gambar 6: Beralih ke Tampilan Fitur
Delegasi Fitur
Anda mungkin tertarik dengan delegasi fitur jika Anda adalah administrator server dan Anda bukan orang utama yang menyediakan konten di server Anda, atau jika Anda adalah pengembang dan Anda ingin lebih mengontrol konfigurasi IIS untuk aplikasi Anda.
Delegasi fitur IIS berarti mengelola:
- penguncian bagian konfigurasi untuk mengontrol konfigurasi apa yang dapat diatur di web.config (umumnya, satu bagian konfigurasi IIS adalah satu modul IIS)
- kumpulan pengguna situs dan aplikasi yang diizinkan menggunakan IIS Manager untuk melihat konfigurasi dan mengatur konfigurasi untuk fitur dengan bagian konfigurasi yang tidak terkunci
Berikut ini adalah penjelasan kursor tentang delegasi fitur di IIS Manager. Untuk panduan mendalam, lihat Cara Mengelola Delegasi Fitur.
Penguncian Konfigurasi
Jika bagian konfigurasi "dikunci" secara default, itu hanya dapat dikonfigurasi di applicationHost.config. Manajer IIS menyediakan sarana bagi administrator server untuk "membuka kunci" bagian konfigurasi IIS. Setelah bagian konfigurasi tidak terkunci, bagian tersebut dapat diatur dalam file web.config oleh non-administrator.
Misalnya, fitur "Halaman Kesalahan Kustom" di Manajer IIS berinteraksi dengan konfigurasi di bagian "system.webServer/httpErrors". Jika administrator server menggunakan IIS Manager atau appcmd untuk membuka kunci bagian konfigurasi system.web/httpErrors, bagian httpErrors akan muncul di dalam tag lokasi dengan overrideMode="allow" di applicationHost.config:
<location path="" overrideMode="Allow">
<system.webServer>
<httpErrors/>
</system.webServer>
</location>
OverrideMode="allow" berarti valid untuk mengatur konfigurasi untuk httpErrors dalam file web.config:
<configuration>
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/errors/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</configuration>
Lihat bagian "Koneksi Server, Situs, dan Aplikasi" di bawah ini untuk melihat bagaimana penguncian konfigurasi memengaruhi koneksi. Untuk informasi mendalam tentang kunci konfigurasi, lihat Cara Menggunakan Penguncian Konfigurasi.
Administrator Situs dan Aplikasi
Selain itu, administrator server dapat mengaktifkan non-administrator untuk menggunakan IIS Manager untuk menyambungkan ke situs atau aplikasi. Non-administrator yang dapat terhubung ke situs atau aplikasi disebut "Administrator Situs" atau "Administrator Aplikasi", dan mereka dapat:
- Mengelola konfigurasi yang tidak terkunci untuk situs atau aplikasi mereka (pengaturan ditulis ke dalam file web.config)
- Melihat pengaturan konfigurasi terkunci tanpa dapat mengubahnya
- Menambahkan administrator situs atau aplikasi lain untuk situs atau aplikasi mereka
Untuk informasi tentang cara membuat administrator situs dan aplikasi, lihat dokumentasi online Membuat Situs dan Administrator Aplikasi untuk Delegasi.
Koneksi Server, Situs, dan Aplikasi
Hanya administrator komputer yang dapat menggunakan Manajer IIS untuk menyambungkan ke server web. Koneksi server dapat menulis ke file konfigurasi root, applicationHost.config dan root web.config, dan semua file web.config terdistribusi. Jika bagian konfigurasi dikunci di applicationHost.config, fitur yang sesuai akan dibaca/ditulis dalam koneksi server karena perubahan konfigurasi ditulis ke applicationHost.config di tag lokasi.
Administrator komputer dan Administrator Situs yang ditunjuk dapat tersambung ke situs web. Koneksi situs hanya dapat menulis ke file web.config di bawah folder akar situs. Jika bagian konfigurasi dikunci di applicationHost.config, fitur yang sesuai akan muncul baca-saja di koneksi situs karena koneksi situs tidak dapat menulis konfigurasi ke applicationHost.config (bahkan di tag lokasi). Ini mempengaruhi administrator komputer dan Administrator Situs.
Gambar 7: Hiearchary Konfigurasi di Manajer IIS
Administrator komputer, Administrator Aplikasi yang ditunjuk, dan Administrator Situs untuk situs induk aplikasi, dapat tersambung ke aplikasi. Koneksi aplikasi hanya dapat menulis ke file web.config di bawah folder akar aplikasi. Jika bagian konfigurasi dikunci di applicationHost.config atau file web.config situs, fitur yang sesuai akan muncul baca-saja dalam koneksi aplikasi.
Untuk informasi tentang cara menyambungkan ke server, situs, atau aplikasi, lihat dokumentasi online tentang Mengelola Koneksi di IIS 7.0.
Konfigurasi
Bahkan jika Anda tidak pernah mengubah penguncian konfigurasi dan tidak pernah menggunakan delegasi fitur, pada titik tertentu Anda akan bertanya-tanya bagaimana Manajer IIS memutuskan di mana harus menulis konfigurasi. Ada dua aturan yang menentukan perilaku ini:
- ApplicationHost.config vs. root Web.config: jika fitur tercantum di bawah area ASP.NET di Manajer IIS, konfigurasi tingkat server akan ditulis ke file web.config root untuk .NET Framework v2.0. Jika fitur tercantum di bawah area IIS di IIS Manager, konfigurasi tingkat server akan ditulis ke applicationHost.config. Satu-satunya pengecualian untuk aturan ini adalah Autentikasi Formulir, yang ada di fitur Autentikasi di bawah area IIS.
- Konfigurasi Terkunci vs. Tidak Terkunci: Semua bagian konfigurasi ASP.NET, dan beberapa bagian konfigurasi IIS, tidak terkunci secara default. Untuk bagian yang tidak terkunci, IIS Manager akan menulis ke web.config situs jika konfigurasi diubah untuk situs, atau konfigurasi aplikasi jika konfigurasi diubah untuk aplikasi. Sebagian besar bagian konfigurasi IIS dikunci secara default. Untuk bagian terkunci, Manajer IIS akan selalu menulis ke applicationHost.config bahkan saat memodifikasi konfigurasi untuk situs dan aplikasi.
Bilah Status
Bilah status menunjukkan tempat Manajer IIS akan menulis konfigurasi:
Konfigurasi: config_file_name '<config_file_object_path>'><, <jalur lokasi="<jalur">>
<config\_file\_object\_path>
adalah jalur ke objek file konfigurasi, misalnya:
- "localhost": konfigurasi tingkat server; applicationHost.config untuk fitur IIS, root web.config untuk fitur ASP.NET.
- "localhost/Default Web Site": file web.config di folder fisik Situs Web Default
- "localhost/Default Web Site/careers/technical": file web.config di folder fisik yang memetakan ke URL "/careers/technical" di bawah Situs Web Default
<config\_file\_name>
adalah nama file konfigurasi target, misalnya:
- "applicationHost.config atau root Web.config": applicationHost.config untuk fitur IIS, root web.config untuk fitur ASP.NET
- "web.config": file web.config di namespace web
<location\_path>
adalah jalur lokasi ke objek yang sedang dikonfigurasi (untuk informasi selengkapnya tentang jalur lokasi, lihat Gambaran Umum Konfigurasi). Bagian teks ini hanya muncul jika bagian konfigurasi fitur dikunci pada tingkat yang lebih tinggi.
Contoh: Menulis ke ApplicationHost.config vs. root Web.config
Pemadatan adalah fitur IIS, dan muncul di bawah IIS jika Anda mengelompokkan/memfilter daftar fitur halaman beranda menurut Area. Jika Anda telah menavigasi ke halaman Kompresi tingkat server dan menonaktifkan kompresi statis, IIS Manager akan menulis konfigurasi ini ke dalam %windir%\Windows\system32\inetsrv\applicationHost.config
:
<urlCompression doStaticCompression="false" />
Kompilasi .NET adalah konfigurasi .NET Framework, dan muncul di bawah ASP.NET jika Anda mengelompokkan/memfilter daftar fitur halaman beranda menurut Area. Jika Anda telah menavigasi ke halaman Kompilasi .NET tingkat server dan Anda mengatur bahasa default ke C#, Manajer IIS akan menambahkan atribut defaultLanguage ke bagian kompilasi di file root web.config, yaitu %windir%\Windows\\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config
:
<compilation defaultLanguage="C#">
Bilah status untuk kedua situasi ini akan membaca: Konfigurasi: 'localhost' applicationHost.config atau root web.config
Contoh: Menulis ke Konfigurasi Terkunci vs. Tidak Terkunci
Bagian konfigurasi "defaultDocument" IIS tidak terkunci secara default. Jika Anda mengonfigurasi dokumen default untuk Situs Web Default, IIS Manager akan menulis konfigurasi ini ke %windir%\inetpub\wwwroot\web.config
:
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="default.aspx" />
</defaultDocument>
</system.webServer>
</configuration>
Bilah status akan membaca: Konfigurasi: 'Situs Web Default' web.config
Bagian konfigurasi "httpErrors" IIS tidak terkunci secara default. Jika Anda mengkustomisasi respons HTTP 404 untuk Situs Web Default, Manajer IIS akan menulis konfigurasi ini ke %windir%\Windows\system32\inetsrv\applicationHost.config
:
<location path="Default Web Site" overrideMode="Allow">
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/err/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</location>
Bilah status akan membaca: 'localhost' applicationHost.config atau root web.config, <location path="Default Web Site">
IIS Manager remoting untuk IIS 6.0, dan versi IIS sebelumnya, melalui MMC dan selalu diaktifkan. Dengan IIS 7.0 ke atas, IIS Manager jarak jauh harus diaktifkan secara eksplisit. Semua manajemen jarak jauh dilakukan melalui HTTPS dan ditangani oleh komponen IIS yang disebut Layanan Manajemen Web (WMSVC). Jika Anda ingin mengaktifkan manajemen jarak jauh IIS 7.0 ke atas melalui IIS Manager, baca Cara Mengaktifkan Jarak Jauh Manajer IIS.
Layanan Manajemen Web (WMSVC)
Layanan Manajemen Web (WMSVC) adalah server web yang berdiri sendiri (inti web yang dapat dihosting (HWC)) yang dihosting dalam layanan NT. Setelah WMSVC diinstal dan dimulai, WMSVC mendengarkan port 8172 pada semua alamat IP yang tidak ditetapkan. Ini hanya mengharapkan untuk menerima 4 jenis permintaan, dan masing-masing dilayankan oleh handler-nya sendiri:
- Permintaan masuk ke login.axd
- Permintaan pengunduhan kode ke download.axd
- Permintaan layanan manajemen ke service.axd
- Permintaan Ping ke ping.axd
Permintaan Masuk
Manajer IIS mengirimkan permintaan masuk di seluruh kawat ke WMSVC untuk menginisiasi koneksi. Autentikasi adalah NTLM atau dasar, tergantung pada apa yang dipilih pengguna ketika mereka diminta untuk memberikan kredensial dalam dialog koneksi.
Gambar 9: Menentukan Kredensial
Permintaan Pengunduhan Kode
Jika login berhasil, WMSVC mengembalikan daftar modul UI untuk koneksi. Misalnya, setiap halaman Manajer IIS seperti "Halaman Kesalahan Kustom" sesuai dengan modul. Jika ada modul yang tidak dimiliki Manajer IIS, ia akan meminta untuk mengunduh biner modul (misalnya, ini akan terjadi jika administrator server menginstal produk RSA Security baru di server produksinya, tetapi tidak menginstal produk di komputer desktopnya yang ia gunakan untuk terhubung ke server).
Permintaan Layanan Manajemen
Setelah koneksi dibuat, pengguna akhir berinteraksi dengan Manajer IIS yang menyebabkan permintaan layanan manajemen. Layanan manajemen meminta layanan modul langsung di WMSVC untuk membaca/menulis konfigurasi, status runtime, dan penyedia di server.
Permintaan Ping
Permintaan Ping dibuat dari dalam layanan WMSVC ke server web (HWC) yang dihostingnya. Permintaan Ping adalah mekanisme sederhana untuk memastikan inti web yang dapat dihosting terus responsif.
Konfigurasi Layanan
WMSVC memiliki serangkaian konfigurasi yang dapat diedit yang sangat kecil yang disimpan dalam registri. Setiap kali layanan dimulai, file konfigurasi web diregenerasi di %windir%\ServiceProfiles\LocalService\AppData\Local\Temp\WMSvc<GUID>\
. File konfigurasi web tidak dapat diedit, bahkan oleh administrator.
Gambar 10: Mengubah Konfigurasi di Registri
Keamanan
Jarak jauh IIS Manager dan Web Management Service (WMSVC) telah melalui serangkaian ulasan untuk memastikan fungsionalitasnya sederhana dan aman. Ini adalah beberapa langkah keamanan yang diambil:
- Memerlukan SSL (HTTPS) agar semua koneksi dapat mengamankan data yang diteruskan antara klien IIS Manager jarak jauh dan WMSVC
- Berjalan sebagai Layanan Lokal dengan kumpulan izin yang dikurangi
Konfigurasi Hostable Web Core (HWC) terkunci, termasuk serangkaian modul yang diperlukan minimal dan aturan pemfilteran permintaan yang dibuat dengan hati-hati.