Sampel Skrip C# dan PowerShell
Artikel ini menyediakan ringkasan skrip Sampel PowerShell dan C# yang disebutkan di seluruh Panduan Hosting. Mereka dapat digunakan untuk tugas penyebaran, konfigurasi, migrasi, dan provisi.
oleh Walter Oliver
Skrip Penyebaran -Hosting Bersama
-
Skrip PowerShell ini akan membantu menyebarkan dan mengonfigurasi Server Web. Perhatikan bahwa skrip ini ditulis dan diuji menggunakan PS 2.0:
runPKGMGT_IIS.PS1: menjalankan alat perintah "pkgmgt.exe" untuk menginstal IIS 7.0 dengan modul yang direkomendasikan untuk hosting bersama, lihat Menginstal Peran Server Web.
- Skrip menggunakan file "unattended.xml" sebagai data konfigurasi inputnya, skrip menentukan modul IIS untuk diinstal.
- Diperlukan: Unattend.xml mengharuskan nomor versi diatur ke Versi produk Windows saat ini yaitu version="6.0.6000.16386". Ini dapat ditemukan dengan Mengklik
C:\Windows\RegEdit.exe
Kanan dan memilih tab detail. PkgMgr memerlukan parameter ini sehingga dapat menginstal semua komponen yang diinginkan dengan benar
Install_IISSharedHosting.PS1: menjalankan semua skrip konfigurasi sesuai dengan panduan Hosting Bersama, lihat Mengonfigurasi IIS 7.0 untuk Hosting Bersama.
- Skrip menggunakan file IISSettings.xml sebagai data konfigurasi input. Ini berisi pengaturan untuk Kompresi Dinamis dan Ambang Diam
- Pengaturan File Default untuk server dikontrol melalui Default_File_Config.xml. Ini berisi daftar semua file Default yang akan ditambahkan atau dihapus. Buat entri sebanyak yang Anda inginkan. Atur activity="ADD" untuk menambahkan atau "REMOVE" untuk dihapus.
Enable32bitModeWorkerProcess.PS1: memungkinkan proses pekerja mode 32-bit di komputer 64 bit.
AppPoolIdentAsAnonymousUser.PS1: menetapkan Identitas Kumpulan Aplikasi sebagai Pengguna Anonim.
AddRemoveDefaultDoc.PS1: menambahkan atau menghapus Dokumen Default berdasarkan spesifikasi file input Default_Files_Config.XML.
ConfigureDynamicIdleThreshold.PS1: mengatur properti konfigurasi dynamicIdleThreshold .
ConfigureDynamicCompression.PS1: mengatur properti Pemadatan Dinamis .
HTTPResponseCache.PS1: menunjukkan Cache Respons HTTP.
Segera hadir: Mengatur kepercayaan sedang ASP.NET .
-
Skrip PowerShell ini akan membantu menyebarkan dan mengonfigurasi Server File. Perhatikan bahwa skrip ini ditulis dan diuji menggunakan PS 2.0:
InstallFileServer.PS1: menjalankan semua skrip untuk menginstal dan mengonfigurasi Peran FileServer.
- File: FolderPermissions.xml, SharePermissions.xml, DirectoryQuotas_Settings.xml diisi dengan pengaturan sampel. masing-masing harus dikonfigurasi pra-penyebaran karena pengaturan ini akan bervariasi pada per penyebaran.
- DirectoryQuotas_Settings.xml: Memungkinkan Anda menentukan kuota folder sebanyak yang diperlukan.
- FolderPermissions.xml: Memungkinkan Anda menentukan Folder sebanyak yang diperlukan, dan setiap folder mungkin memiliki izin 0, 1, atau banyak.
- SharePermissions.xml: Memungkinkan Anda menentukan berbagi sebanyak yang diperlukan (akan kesalahan jika berbagi baru tidak sesuai dengan folder yang ada). Setiap berbagi mungkin memiliki 0, 1, atau banyak izin.
runPKGMGR_FileServer: menjalankan alat perintah "pkgmgt.exe" untuk menginstal peran Server File. Skrip menggunakan file "unattended.xml" sebagai parameter inputnya, skrip menentukan modul untuk diinstal.
DirectoryQuota.PS1: menetapkan kuota direktori, lihat Kuota Direktori.
Folder_Shares_Permissions.PS1: mengatur izin folder sesuai dengan spesifikasi dalam file input "SharePermissions.XML". Lihat Izin Berbagi dan NTFS.
Provisi dan Pengelolaan
Sampel Provisi di C# adalah sekumpulan sampel C# untuk melakukan beberapa tugas provisi umum, Lihat detail dalam artikel Sampel Provisi di C# .
Sampel Layanan Hosting adalah sampel kode C# yang ekstensif untuk memprovisikan Situs, Akun pengguna, SQL db, dan lainnya. Lihat detail di artikel Sampel Kode Layanan Hosting .
Sampel Kode dan Skrip menyediakan cuplikan kode sampel untuk membuat tugas Situs dan Konfigurasi IIS 7.0.
[Situs IIS Penyediaan Skrip PowerShell] (https://www.iis.net/community/files/hosting/ProvisioningScripts 4-7-2008.zip "Situs IIS Skrip PowerShell"). Ini adalah 6 Skrip PowerShell untuk membantu Anda mengotomatiskan provisi AppPools, Situs, Aplikasi, Direktori Virtual, dan Pengikatan. Mereka menggunakan antarmuka namespace kode terkelola Microsoft.Web.Administration untuk menyediakan objek ini. Berikut adalah contoh untuk masing-masing:
4.1. Untuk membuat sejumlah AppPools, Situs, Aplikasi, Direktori Virtual, dan Pengikatan yang diatur sesuai dengan file data konfigurasi, gunakan Sample_AppPool_Site_AppCreation. Skrip ini memanggil semua yang lain untuk membuat setiap objek sesuai dengan data konfigurasi yang ditemukan dalam file XML ProvisioningConfig.xml.
Contoh:
Sample_AppPool_Site_AppCreation
Contoh file XML ProvisioningConfig.xml:
<Script> <ApplicationPool> <Site Name="DAP1Site2" PhysicalPath="C:\Content\DAP1Site2"> <Application PhysicalPath="C:\Content\DAP1Site2\App1" RelativePath="/App1"> <VirtualDirectory PhysicalPath="C:\Content\Logs" RelativePath="/App1/VDir"/> </Application> <Application PhysicalPath="C:\Content\DAP1Site2\App2" RelativePath="/App2"> </Application> <Binding Port="80" BindingInfo="www.DAP1Site2.com" Protocol="http"/> <Folder name="C:\Content\DAP1Site2" quota="50mb"> <Permission> <User>Administrators</User> <Capability>F</Capability> </Permission> </Folder> </Site> </ApplicationPool> </Script>
4.2. Untuk membuat AppPools , gunakan kata sandi nama pengguna CreateIISAppPool PoolName. Jika Anda tidak memberikan nama pengguna dan kata sandi, nama pengguna dan kata sandi akan menggunakan pengguna saat ini.
Contoh:
CreateIISAppPool "DemoAppPool1" "" ""
4.3. Untuk membuat Situs, gunakan CreateIISSite SiteName PhysicalPath PoolName ID.
Contoh:
CreateIISSite "DAP1Site1" "C:\Content\DAP1Site1" "DemoAppPool1" 1702121
4.4. Untuk membuat Aplikasi di situs, gunakan CreateIISApplicationOntoSite PhysicalPath RelativePath SiteName PoolName.
Contoh:
CreateIISApplicationOntoSite "C:\Content\DAP1Site1\App1" "/App1" "DAP1Site1" "DemoAppPool1"
4.5. Untuk membuat Direktori Virtual untuk aplikasi, gunakan CreateIISVDirOntoApplication ApplicationPhysicalPath PhysicalPath SiteName RelativePath.
Contoh:
CreateIISVDirOntoApplication "C:\Content\Logs" "/App1/VDir" "DAP1Site1" "/App1"
4.6. Untuk membuat Pengikatan untuk Situs , gunakan Protokol CreateIISBindingOntoSite SiteName Port BindingInfo.
Contoh:
CreateIISBindingOntoSite "DAP1Site1" 80 "www.DAP1Site2.com" "http"