我在Linux上通過Apache上的mod_python運行Django。我有一個自定義身份驗證後端,以及需要對所有頁面進行身份驗證的中間件,但靜態內容除外。Django,mod_python,apache和古怪的會話
我的問題是,我登錄後,我仍然會隨機獲得登錄屏幕的一次又一次。在我看來,每個apache進程都有它自己的python進程,而這個進程又擁有自己的內部進程。所以只要我通過我登錄的同一個進程獲得服務,一切都很好,並且很棒。但是如果我的請求被不同的apache進程提供服務,我不再進行身份驗證。
我檢查了我用FireBug發送的HTTP標頭,它們每次都是相同的,即。同一個cookie。
這是一個已知問題,並有解決方法/修復?
編輯:我有一個顯示大量生成圖像的頁面。有些關閉這些將不會顯示。這是因爲他們遠遠落後於身份驗證的中間件,所以他們會隨機放置一個登錄圖像。但是,刷新此頁面足夠多的時間,它最終會工作,這意味着所有進程都能識別我的會話。
運行一段時間後,事情似乎更加穩定。但我不喜歡這是多麼不穩定。也許我需要重置Apache幾次,讓它運行幾分鐘,然後才能一直工作。 – Staale 2008-10-03 11:39:43