2011-08-21 90 views
1

我已經在我的settings.py文件中設置APPEND_SLASHES指令False,但Django的進行重定向一些(但不是全部)請求這是令人難以置信的惱人。什麼可能導致這個問題?Django的忽略APPEND_SLASHES

基本上,如果我做的請求沒有斜槓,它會返回正確的響應主體,而是一個重定向(301),在年底這將不匹配,因爲它重定向到相同的URL,但以斜槓它不應該以斜線結束。

是否有修復或我只需要從CommonMiddleware去掉斜槓重定向代碼?

編輯:CommonMiddleware不是罪魁禍首。該URL在最後以斜槓到達。

編輯2:只發生在Firefox。 到底是什麼? Firebug寄存器兩個 HTTP請求,其中之一是重定向。只有一個請求實際上碰到了服務器,並且它是最後一個帶有斜槓的。 301從無處出現,甚至沒有發送(Wireshark沒有註冊它)。

回答

3

301是permament重定向。所以,如果你有這個選項設置爲true,然後firefox仍然會記住這個permament重定向並轉到附加斜線的頁面。嘗試清除火狐緩存和離線內容。