Bagikan melalui


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

  1. Server

    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 .

  2. File Server

    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

  1. Sampel Provisi di C# adalah sekumpulan sampel C# untuk melakukan beberapa tugas provisi umum, Lihat detail dalam artikel Sampel Provisi di C# .

  2. 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 .

  3. Sampel Kode dan Skrip menyediakan cuplikan kode sampel untuk membuat tugas Situs dan Konfigurasi IIS 7.0.

  4. [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"