2016-08-25 70 views
1

會話啓動期間出錯;請檢查您的PHP和/或網絡服務器日誌文件並正確配置您的PHP安裝。同時確保在您的瀏覽器中啓用了Cookie。Windows IIS中的PHP會話警告

在session_start():開放(C:\ WINDOWS \ TEMP \ sess_3ls3qdk77m9mhsf5tm1cdhrm05bi5kb1,O_RDWR)失敗:無效的參數(22)

在我的php.ini文件:session.save_path = "C:\temp\phpsessions" 它工作正常了。所以突然顯示一個錯誤。 任何人都可以協助這個請。

+0

任何人都可以請幫忙嗎?它將高度讚賞 – CGA

+0

我有同樣的問題,我正在使用SQL Server和我的自定義站點與IIS –

+0

謝謝大家的所有建議。現在工作正常。 – CGA

回答

0

很可能是瀏覽器問題。瀏覽器和會話數據之間有些不匹配。

以防萬一請按照以下步驟操作: 1.清除瀏覽器的緩存,Cookie和臨時數據(或者使用其他瀏覽器進行實驗)。 2.清除會話文件存儲在服務器端的目錄(在你的情況下,它似乎是C:\ Windows \ TEMP或C:\ temp \ phpsessions,更好地清理它們兩個)。

如果它不起作用,請分享您的php.ini文件。

1

PHP不會自動創建這個目錄結構。因此請確保存在C:\ temp \ phpsessions目錄下的此。如果沒有,那麼你可以在ext/session dir中使用腳本來達到該目的,或者創建該目錄結構手動

然後

您可以通過,因爲轉義字符的寫作這一行創建的目錄會議開始前還要注意這裏額外的「\」改變會話保存路徑。

session_save_path("C:\\temp\\phpsessions"); 
+0

你能否詳細解釋一下?我找不到任何ext/session目錄,以及'script' - .bat文件是什麼意思? – RenniePet

2

仔細檢查C:\ Windows \ Temp \文件夾的權限。我認爲IIS_IUSRS需要有寫權限才能保存文件。

不妨將會議文件夾出的C:\ WINDOWS \

你在哪裏都放在會議,IIS將需要的權限進行修改。

4

正如已經被其他說明,有一個機會,

  1. 無論是C:\ TEMP \ phpsessions目錄不存在
  2. 否則IIS_IUSRS讀/寫權限中缺少C:\ Windows \ Temp

您的瀏覽器沒有問題。