none
MS Knowledge Base: Bagaimana cara membagi session state di seluruh subdomain? (Part 1) RRS feed

  • Diskusi Umum

  • Artikel ini menjelaskan tentang sampel All-In-One Code Framework yang tersedia untuk di-download. Sampel kode ini berisi langkah-langkah panduan yang menjelaskan bagaimana cara untuk membagi session state di seluruh subdomain.

    Tingkat Kesulitan

                Menengah

    Pembahasan Teknis

    Terkadang, pengembang ingin menjadi host dari dua atau lebih situs web ASP.NET yang menggunakan session state yang sama di beberapa subdomain. Oleh karena itu, lebih mudah untuk membuat behavior dari website tersebut sebagai aplikasi yang sama dan juga mempermudah proses transfer data di website. Namun, masalah berikut terjadi ketika situs web mencoba untuk berbagi session state yang sama:

     

    1.     Situs web menggunakan "InProc" sebagai mode session state secara default. Oleh karena itu, data session state dipisahkan.

    2.     Session state menyimpan token Cookie untuk mengidentifikasi saat berkunjung, dan Cookie ini tidak dapat dibagi di seluruh domain.

     

    Untuk menggunakan session state yang sama, gunakan metode berikut ini untuk menyelesaikan masalah di atas:

     

    1.     Gunakan "SQLServer" sebagai mode session state. Mereka akan melakukan decryption dan memvalidasi data session state dengan menggunakan kunci yang sama.

    2.     Simpan session state token (ID sesi) dengan domain root sehingga token dapat dibagi oleh semua subdomain.

     

    Contoh Sampel

    Sampel ini berisi HttpModule (juga dikenal sebagai SharedSessionModule) assembly dan dua proyek aplikasi web ASP.NET. HttpModule assembly digunakan untuk mengatur logika dari pembagian session state. Dua proyek aplikasi web ASP.NET digunakan untuk menunjukkan pembagian session state. Untuk berbagi session state di seluruh subdomain, ikuti langkah berikut:

    Langkah 1

    Konfigurasi
    kan SQL Server anda untuk mendukung session state. Sebelum anda mengkonfigurasi SQL Server untuk mendukung session state, anda harus menginstal SQL Server Express pada operating sistem komputer anda.

    Catatan SQL Server Express biasanya
    disertakan dalam Microsoft Visual Studio. Untuk men-download SQL Server Express, kunjungi situs web Microsoft berikut:
                Download SQL Server Express (http://www.microsoft.com/express/database/)


    Kemudian, jalankan perintah berikut di Console Window:
               <system drive>: \ Windows \ Microsoft.NET \ Framework \ <NETFrameworkversion.> \

               aspnet_regsql.exe-S localhost \ sqlexpress-E-ssadd

     

     

    Catatan

     

    ·         The <. NETFrameworkversion> merupakan tempat untuk versi NET Framework. yang terinstal pada sistem operasi Anda.

    ·         Jika Anda tidak menambahkan negara sesi ke SQL Server, Anda menerima pesan kesalahan berikut yang dihasilkan oleh kelas System.Data.SqlClient.SqlException ketika Anda mengkonfigurasi sebuah website menggunakan SQL Server negara modus sesi:

    Invalid object name 'tempdb.dbo.ASPStateTempSessions'.


    Berlanjut ke MS Knowledge Base: Bagaimana cara membagi session state di seluruh subdomain? (Part 2)


    Agnes Sannie [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Jumat, 03 Juni 2011 06.54
    Moderator