Tak dapat membuat permintaan status sesi ke server status sesi

122

Situs kami sedang mengalami masalah ini. Pada dasarnya itu hanya terjadi ketika kita mengklik beberapa tautan tertentu yang akan memunculkan jendela baru.
Ini adalah pesan kesalahan yang kami terima:

Tak dapat membuat permintaan status sesi ke server status sesi.
Harap pastikan bahwa layanan status ASP.NET dimulai dan port klien dan server sama.
Jika server berada pada mesin jarak jauh, pastikan bahwa server menerima permintaan jarak jauh dengan memeriksa nilai HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection.
Jika server ada di komputer lokal, dan jika nilai registri yang disebutkan sebelumnya tidak ada atau disetel ke 0, maka string koneksi server negara harus menggunakan 'localhost' atau '127.0.0.1' sebagai nama server.

situs target:
Void MakeRequest (StateProtocolVerb, System.String, StateProtocolExclusive, Int32, Int32, Int32, Byte [], Int32, Int32, SessionNDMakeRequestResults ByRef)

ini adalah webconfig yang berisi tag sessionstate:

<sessionState mode="StateServer" timeout="45" />

Saya telah memeriksa ASP.NET State Service, dan saat ini dimulai dan disetel ke otomatis

Saya telah mengatur registri yang disebutkan dalam pesan kesalahan ke 1, tetapi masih tidak berfungsi.

Liam
sumber

Jawaban:

305
  1. Mulai–> Alat Administratif -> Layanan
  2. Klik kanan pada ASP.NET State Service dan klik "start"

Selain itu, Anda dapat mengatur layanan ke otomatis sehingga akan berfungsi setelah reboot

Jamshid Hashimi
sumber
2
Kadang-kadang saya telah menemukan itu hanya bekerja setelah restart Layanan Negara ASP.NET beberapa kali!
Matthew Lock
2
Bekerja Seperti pesona bagi saya
Arun
1
Nama persisnya adalah aspnet_state.
AmiNadimi
1
Pahlawanku ... sudah lama mencari itu.
G43beli
1
Anda telah menyelamatkan saya ... berjam-jam memindahkan semua orang ... dan Anda tiba dengan solusi mudah ini ... sungguh .. terima kasih
Roger Tello
26

Jika Anda perlu mengubah HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection ke 1, ingat untuk me-restart dengan negara ASP.net layanan setelah Anda mengubah parameter.

hikkemikke
sumber
@hikkenmikke Bagaimana Anda memeriksa dan mengubah HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection
Pomster
8

Periksa itu:

stateConnectionString="tcpip=server:port"

benar. Juga periksa apakah port default ( 42424) tersedia dan sistem Anda tidak memiliki firewallport yang memblokir port di sistem Anda

mas_oz2k1
sumber
1
Saya memiliki masalah yang sama, Diverifikasi bahwa layanan status sesi saya berjalan dengan benar, tetapi masih mendapatkan pesan yang sama. Berikut adalah pengaturan web.config saya: <sessionState mode = "StateServer" stateConnectionString = "tcpip = 127.0.0.1: 42424" sqlConnectionString = "data source = 127.0.0.1; Trusted_Connection = yes" cookieless = "false" timeout = "30" />
lstanczyk
5

Ketik Services.msc di panel run dari windows run window. Ini akan mencantumkan semua layanan windows di sistem kami. Sekarang kita perlu memulai layanan Asp .net State seperti yang ditunjukkan pada gambar.masukkan deskripsi gambar di sini

Masalah Anda akan terselesaikan.

Rinoy Ashokan
sumber
Saya mendapat kesalahan ini setelah memulai ulang karena Pembaruan Windows. Saya mengikuti langkah-langkah ini dan berhasil. Terima kasih.
Mauricio Arias Olave
4

Salah satu klien saya menghadapi masalah yang sama. Langkah-langkah berikut diambil untuk memperbaikinya.

 (1) Open Run. 

 (2) Type Services.msc

 (3) Select ASP.NET State Service

 (4) Right Click and Start it.
Hiren Parghi
sumber
2

Hal lain yang perlu diperiksa adalah apakah Anda mengaktifkan Windows Firewall, karena itu mungkin memblokir port 42424.

jwanagel.dll
sumber
2

Saya telah menemukan bahwa beberapa pengembang karena alasan tertentu akan menentukan IP pribadi server di luar IIS di lokasi yang tidak terduga, seperti file konfigurasi yang tidak standar (yaitu bukan web.config) atau file teks. Hal ini dapat menyebabkan operasi internal gagal bahkan ketika layanan dimulai, port tidak diblokir, kunci reg sudah benar, dll.

Kaseya, khususnya, menempatkan file bernama serveripinternal.txt di direktori root IIS dari server VSA. Saya telah melihat teks kesalahan Anda ketika seseorang menjalankan instance Kaseya mereka sendiri mengubah IP internal server. Server akan dapat dijangkau, IIS akan merespon, dan halaman login akan muncul - tetapi login akan gagal dengan pesan yang dikutip.

Kuda Poni Satu Catatan
sumber
1

Saya mengalami masalah yang sama ketika beberapa penginstalan ASP.NET rusak. Dalam hal ini mereka menyarankan untuk menjalankan aspnet_regiis -i -enable

Matthew Lock
sumber
pada versi asp.net yang benar. Dalam kasus saya, itu adalah 2
Ricardo Appleton
0

Saya baru-baru ini mengalami masalah ini dan tidak ada solusi yang diusulkan untuk memperbaikinya. Masalahnya ternyata adalah penggunaan set data yang disimpan dalam sesi secara berlebihan. Ada kesalahan pada kode yang mengakibatkan ukuran sesi meningkat 10x.

Ada sebuah artikel di blog msdn yang juga membahas tentang ini. http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

Saya menggunakan fungsi untuk menulis pesan pelacakan kustom untuk mengukur ukuran data sesi di situs langsung.

Ahmed Mansour
sumber
0

Bukan jawaban terbaik, tapi itu pilihan:

Komentari baris yang diberikan di web.config.

Marco Aurelio Fernandez Reyes
sumber