Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Robert McMurray
Pengantar
Microsoft merilis modul ekstensi WebDAV baru yang sepenuhnya ditulis ulang untuk Internet Information Services 7.0 (IIS 7.0) di Windows ServerĀ® 2008. Modul ekstensi WebDAV baru ini menggabungkan banyak fitur baru yang memungkinkan penulis web menerbitkan konten lebih baik dari sebelumnya, dan menawarkan administrator web lebih banyak opsi keamanan dan konfigurasi. Microsoft telah merilis pembaruan ke modul ekstensi WebDAV untuk Windows ServerĀ® 2008 yang menyediakan dukungan kunci bersama dan eksklusif untuk mencegah pembaruan yang hilang karena penimpaan.
Dokumen ini akan memanding Anda menggunakan utilitas AppCmd.exe baru di IIS 7.0 untuk mengonfigurasi pengaturan WebDAV dari baris perintah atau skrip batch.
Prasyarat
Item berikut diperlukan untuk menyelesaikan prosedur dalam artikel ini:
IIS 7.0 harus diinstal di server Anda, dan berikut ini harus dikonfigurasi:
- Situs Web Default yang dibuat oleh penginstalan IIS 7.0 masih harus ada.
Modul ekstensi WebDAV baru harus diinstal. Untuk informasi mengenai penginstalan modul WebDAV baru, silakan lihat dokumen berikut:
Catatan
Anda perlu memastikan bahwa Anda mengikuti langkah-langkah dalam dokumen ini menggunakan izin administratif penuh. Ini paling baik dicapai menggunakan salah satu dari dua metode:
- Masuk ke komputer Anda menggunakan akun "administrator" lokal.
- Jika Anda masuk menggunakan akun dengan izin administratif yang bukan akun "administrator" lokal, buka Manajer IIS dan semua sesi prompt perintah menggunakan opsi "Jalankan sebagai Administrator".
Kondisi di atas diperlukan karena komponen keamanan Kontrol Akun Pengguna (UAC) di Windows Server 2008 akan mencegah akses administratif ke pengaturan konfigurasi IIS 7.0. Untuk informasi selengkapnya tentang UAC, silakan lihat dokumentasi berikut:
Catatan
Pengaturan Pemfilteran Permintaan dapat memblokir beberapa jenis file dari penulisan WebDAV secara default. Saat Anda mengonfigurasi WebDAV menggunakan UI Manajer IIS, pengaturan pemfilteran permintaan diperbarui secara otomatis untuk membuka blokir penulisan WebDAV. Namun, jika Anda memilih untuk mengonfigurasi WebDAV dengan cara apa pun selain menggunakan UI Manajer IIS, lihat panduan Cara Mengonfigurasi WebDAV dengan Pemfilteran Permintaan .
Konsep AppCmd Dasar
AppCmd.exe adalah alat baris perintah baru untuk mengelola IIS 7.0. Dalam banyak hal, anggap saja sebagai pengganti skrip adsutil.vbs dari versi IIS sebelumnya. AppCmd.exe mendukung berbagai sakelar perintah untuk berbagai objek, membuatnya mudah ditulis dalam file batch untuk mengonfigurasi segudang pengaturan IIS. (Catatan: Utilitas AppCmd.exe terletak di %WinDir%\System32\InetSrv folder
.)
Sintaks umum untuk AppCmd.exe adalah:
AppCmd (command) (object-type) <identifier> </parameter1:value1 ...>
AppCmd.exe juga menyediakan dukungan bantuan baris perintah yang luas, yang dapat diakses menggunakan salah satu metode berikut:
AppCmd /?
AppCmd (object) /?
AppCmd (command) (object) /?
Daftar perintah tergantung pada objek , dan objek berikut didukung:
Objek | Deskripsi |
---|---|
SITUS | Administrasi situs virtual |
APP | Administrasi aplikasi |
VDIR | Administrasi direktori virtual |
APPPOOL | Administrasi kumpulan aplikasi |
KONFIGURASI | Administrasi bagian konfigurasi umum |
WP | Administrasi proses pekerja |
MINTAKAN | Administrasi permintaan HTTP |
MODUL | Administrasi modul server |
CADANGAN | Administrasi pencadangan konfigurasi server |
JEJAK | Bekerja dengan log jejak permintaan yang gagal |
Misalnya, Anda dapat mencantumkan situs web mana yang dikonfigurasi di server Anda menggunakan objek SITE dengan sintaks berikut:
AppCmd list site
Demikian juga, Anda dapat mencantumkan kumpulan aplikasi mana yang dikonfigurasi di server Anda menggunakan objek APPPOOL dengan sintaks berikut:
AppCmd list apppool
AppCmd juga dapat digunakan untuk mengatur nilai untuk berbagai pengaturan konfigurasi menggunakan objek SITE, dan Anda bisa menggunakan perintah berikut untuk mencantumkan pengaturan yang tersedia untuk Situs Web Default Anda menggunakan sintaks berikut:
AppCmd set site "Default Web Site" /?
Untuk mencantumkan pengaturan konfigurasi untuk jalur tertentu, Anda menggunakan objek CONFIG seperti contoh berikut:
AppCmd list config "Default Web Site/" /section:system.webServer/security/authentication/windowsAuthentication
Objek CONFIG juga dapat digunakan untuk mengatur pengaturan konfigurasi, seperti yang ditunjukkan dalam contoh berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/security/authentication/windowsAuthentication /enabled:true
Anda juga dapat mengontrol di mana AppCmd akan menulis pengaturan yang Anda tentukan dengan menggunakan parameter baris perintah "/commit:". Misalnya, nanti dalam dokumen ini kita akan melihat perintah berikut yang mengaktifkan WebDAV pada Situs Web Default Anda:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /enabled:true /commit:apphost
Catatan
Perintah ini mengaktifkan WebDAV untuk Situs Web Default dan menulis pengaturan tersebut ke file ApplicationHost.config.
AppCmd adalah utilitas yang sangat kuat, dan berbicara secara realistis terlalu banyak untuk dibahas dalam ruang yang singkat, jadi untuk informasi lebih lanjut tentang menjadi akrab dengan AppCmd.exe, silakan lihat artikel berikut di situs web IIS.NET:
Thatsaid, kami melanjutkan untuk mengonfigurasi WebDAV di server Anda.
Memulai WebDAV
WebDAV menginstal ekstensi ke skema default untuk pengaturan IIS, yang membuat AppCmd bekerja dengan WebDAV tanpa modifikasi khusus. Modul WebDAV baru menyimpan semua pengaturannya yang dapat dikonfigurasi dalam file ApplicationHost.config, dan menggunakan bagian berikut:
- system.webServer/webdav/authoring
- system.webServer/webdav/authoringRules
Pengaturan "penulisan" hanya dapat dikonfigurasi di akar situs web, sedangkan pengaturan "authoringRules" dapat dikonfigurasi per URL. Untuk melihat pengaturan mana yang telah dikonfigurasi untuk setiap bagian ini untuk jalur tertentu, Anda dapat menggunakan AppCmd seperti yang terlihat dalam contoh berikut:
AppCmd list config "Default Web Site/" /section:system.webServer/webdav/authoring
AppCmd list config "Default Web Site/" /section:system.webServer/webdav/authoringRules
Mengaktifkan atau Menonaktifkan WebDAV untuk Situs Web
Cukup dimengerti, perintah yang paling mendasar dan berguna untuk WebDAV adalah mengaktifkan atau menonaktifkan WebDAV untuk sebuah situs. Sintaks untuk mengaktifkan WebDAV situs web mengikuti contoh berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /enabled:true /commit:apphost
Dalam contoh ini, kami mengatur atribut "diaktifkan" ke "true" untuk bagian "penulisan" WebDAV di Situs Web Default dan memaksa perubahan tersebut ditulis ke file ApplicationHost.config. Sebaliknya, Anda dapat menonaktifkan WebDAV dengan mengatur nilai yang sama ke "false" seperti yang ditunjukkan dalam contoh berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /enabled:false /commit:apphost
Membutuhkan SSL untuk Penulisan WebDAV untuk Situs Web
Untuk melindungi informasi yang mungkin Anda transfer, WebDAV dapat dikonfigurasi untuk memerlukan SSL untuk semua operasi. Ini dicapai dengan mengatur atribut "requireSsl " ke "true" untuk bagian "penulisan" WebDAV menggunakan sintaks seperti berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /requireSsl:true /commit:apphost
Fungsionalitas ini dapat dinonaktifkan dengan mengatur atribut "requireSsl" ke "false" menggunakan sintaks seperti berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /requireSsl:false /commit:apphost
Memperbolehkan Akses ke File Tersembunyi untuk Situs Web
Untuk alasan keamanan, Anda dapat menekan apakah file yang ditandai sebagai tersembunyi di server akan dikembalikan dalam daftar file. Untuk melakukannya, atur atribut "allowHiddenFiles" ke "true" pada elemen "fileSystem" di bagian "penulisan" menggunakan sintaks seperti berikut ini:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /fileSystem.allowHiddenFiles:true /commit:apphost
Untuk menonaktifkan daftar file tersembunyi, atur atribut "allowHiddenFiles" ke "false" menggunakan sintaks seperti berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /fileSystem.allowHiddenFiles:false /commit:apphost
Mengonfigurasi Pengaturan Kompatibilitas WebDAV untuk Situs Web
Agar kompatibel dengan versi WebDAV untuk IIS sebelumnya, beberapa fitur opsional diekspos melalui pengaturan kompatibilitas. Saat ini daftar opsinya adalah sebagai berikut:
Pengaturan Kompatibilitas | Deskripsi |
---|---|
Tidak ada | Menentukan bahwa tidak ada fitur kompatibilitas yang harus didukung. |
MsAuthorVia | Menentukan bahwa header "MS-Author-Via" harus dikembalikan. (Catatan: Beberapa alat penulisan web Microsoft menggunakan header ini.) |
MultiProp | Menentukan bahwa beberapa <pernyataan prop> harus diizinkan dalam permintaan klien. |
CompactXml | Menentukan apakah XML yang dikembalikan oleh modul WebDAV akan mengakhiri setiap baris dengan urutan CRLF. |
IsHidden | Menentukan bahwa properti pseudo-live IsHidden harus didukung. |
IsCollection | Menentukan bahwa properti pseudo-live IsCollection harus didukung. |
Untuk mengatur salah satu fitur ini, Anda harus mengatur nilai atribut "compatFlags" pada bagian "penulisan" menggunakan sintaks seperti berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoring /compatFlags:"MsAuthorVia,CompactXml" /commit:apphost
Perhatikan bahwa pengaturan kompatibilitas ditentukan sebagai sekumpulan bendera yang dipisahkan koma.
Bekerja dengan Aturan Penulisan WebDAV
Modul WebDAV baru menggunakan aturan penulisan, yang memungkinkan Anda mengonfigurasi cara WebDAV merespons permintaan penulisan dari klien. Misalnya, situs web Anda mungkin mengaktifkan akses anonim untuk pengguna Internet, tetapi akses penulisan web Anda harus dibatasi untuk sekumpulan pengguna tertentu. Dengan menggunakan aturan penulisan, Anda dapat mengonfigurasi pengguna mana yang memiliki akses ke berbagai bagian konten situs web Anda.
Mengonfigurasi Default Aturan Penulisan
Menentukan apakah file yang dipetakan non-MIME diizinkan
Untuk alasan keamanan, IIS tidak mengizinkan akses ke file yang tidak tercantum dalam peta MIME secara default. Dengan mengingat hal itu, penulis web mungkin perlu bekerja dengan jenis file tertentu di server yang tidak tercantum dalam peta MIME. (Misalnya: menyertakan file, file data, dll.) Untuk mengaktifkan akses ke file yang dipetakan non-MIME, Anda perlu mengatur atribut "allowNonMimeMapFiles" ke "true" di bagian "authoringRules". Contoh sintaks berikut menggambarkan bagaimana hal ini dicapai:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /allowNonMimeMapFiles:true /commit:apphost
Fungsionalitas ini dapat dinonaktifkan dengan mengatur atribut "allowNonMimeMapFiles" ke "false" menggunakan sintaks seperti berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /allowNonMimeMapFiles:false /commit:apphost
Menentukan jenis MIME default
Saat bekerja dengan jenis file yang tidak ada dalam daftar MIME, IIS masih perlu mengembalikan jenis MIME kepada klien. Secara default ini diatur ke "application/octet-stream", yang berarti bahwa file harus diperlakukan sebagai file biner mentah terlepas dari jenis kontennya. Untuk mengatur jenis MIME default untuk file yang tidak dipetakan MIME ke jenis file teks, Anda dapat menggunakan sintaks berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /defaultMimeType:"text/plain" /commit:apphost
Untuk mengatur ulang jenis MIME default, gunakan sintaks berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /defaultMimeType:"application/octet-stream" /commit:apphost
Mengelola Aturan Penulisan
Aturan penulisan disimpan dalam koleksi, dan setiap aturan dapat berisi atribut berikut:
Atribut | Deskripsi |
---|---|
jalur | Menentukan tipe isi untuk aturan tersebut. (Lihat di bawah) |
users | Menentukan nama pengguna untuk aturan tersebut. (Lihat di bawah) |
peran | Menentukan grup/peran untuk aturan tersebut. |
akses | Menentukan jenis akses untuk aturan. (Lihat di bawah) |
Catatan:
Atribut "path" digunakan untuk menentukan jenis konten untuk aturan penulisan. Ini bisa untuk jenis konten tertentu seperti "*.aspx", "*.htm", dll., atau Anda dapat menggunakan "*" untuk menunjukkan bahwa aturan penulisan adalah untuk semua konten.
Atribut "peran" dan "pengguna" harus dinyatakan eksklusif satu sama lain. Artinya, aturan penulisan harus untuk "pengguna" atau "peran", tetapi tidak keduanya.
Nilai khusus berikut untuk atribut "pengguna" ditentukan:
Nilai Deskripsi * Semua pengguna ? Pengguna anonim Catatan
Pengguna anonim tidak dapat membaca/menulis konten; pengaturan ini digunakan untuk membatasi jenis file untuk kueri properti anonim.
Nilai berikut didefinisikan untuk jenis akses:
Nilai Deskripsi Tidak ada Menentukan bahwa akses tidak diperbolehkan untuk tipe isi Baca Menentukan akses baca untuk tipe isi Tulis Menentukan akses tulis untuk tipe isi Sumber Menentukan akses ke kode sumber untuk tipe isi
Menambahkan aturan penulisan
Untuk menambahkan aturan penulisan untuk jalur, Anda bisa menggunakan sintaks seperti contoh berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /+[users='administrator',path='*',access='Read,Write,Source'] /commit:apphost
AppCmd set config "Default Web Site/mypath" /section:system.webServer/webdav/authoringRules /+[roles='Authors',path='*.aspx',access='Read,Write,Source'] /commit:apphost
Mengedit aturan penulisan
Setelah aturan penulisan ditambahkan, Anda bisa mengedit aturan tersebut menggunakan sintaks seperti berikut ini:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /[users='administrator',path='*'].access:"None" /commit:apphost
Menghapus aturan penulisan
Anda dapat menghapus aturan penulisan hanya dengan menentukan nama pengguna atau peran menggunakan sintaks seperti berikut ini:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /-[users='administrator'] /commit:apphost
Catatan
Jika ada lebih dari satu aturan penulisan untuk pengguna tersebut, perintah di atas hanya akan menghapus aturan penulisan pertama dalam daftar dan Anda harus mengulangi perintah untuk menghapus aturan berikutnya untuk pengguna tersebut.
Atau Anda dapat menentukan nama pengguna atau peran dan jenis konten seperti contoh berikut:
AppCmd set config "Default Web Site/" /section:system.webServer/webdav/authoringRules /-[users='administrator',path='*'] /commit:apphost
Ringkasan
Dokumen ini telah memperlihatkan kepada Anda cara melakukan hal berikut:
Informasi Lebih Lanjut
Untuk informasi tambahan tentang menggunakan WebDAV, silakan lihat artikel berikut ini:
Catatan
Seperti disebutkan sebelumnya, pengaturan pemfilteran permintaan default Anda dapat memblokir beberapa jenis file dari penulisan WebDAV. Jika Anda tidak mengubah pengaturan pemfilteran permintaan, Anda mungkin melihat berbagai kesalahan saat mencoba menerbitkan file yang diblokir. Misalnya, jika Anda mencoba mengunggah atau mengunduh file web.config, Anda akan melihat kesalahan di klien WebDAV Anda. Untuk informasi selengkapnya tentang mengonfigurasi pengaturan pemfilteran permintaan Anda, lihat panduan Cara Mengonfigurasi WebDAV dengan Pemfilteran Permintaan .