我在Ubuntu 11上安裝了nginx 1.0.2,使用運行FPM/FastCGI的php 5.3.5。在nginx上運行的CodeIgniter應用程序中,數組始終爲空
關於我的codeigniter applilcation我得到以下問題。 我有一個帶有用戶名和密碼字段的簡單登錄表單。當我提交表單時,$ _POST數組是空的。 $ this-> input-> post('username')和$ this-> input-> post('password')也是如此。
該應用程序在Apache上正常工作。我試圖在一個簡單的php文件上創建一個簡單的測試表單,$ _POST數據完美工作。如果需要,我可以提供配置文件。有任何想法嗎 ?
更新: 它終於奏效了。在我的虛擬主機配置中有一些重定向導致數據丟失。工作虛擬主機的配置可以在這裏找到:http://codeigniter.com/forums/viewthread/90231/#455528
你有fastcgi_pass_request_body關閉;在配置中的任何地方?錯誤日誌中是否有關於未能爲請求正文打開臨時文件的內容? – kolbyjack 2011-05-19 00:49:39
不,在任何config或vhost文件中都找不到fastcgi_pass_request_body。我沒有在日誌中看到這樣的「臨時文件」錯誤,但是我確實從表單的目標URL獲得了404錯誤標題。 /user/login /顯示錶單,同樣的控制器/方法也分析結果。但是,只有當表單被引用時,404纔在標題中。我想重定向規則會導致錯誤。我使用這個人的重定向規則http://bit.ly/kljKty 其餘的nginx配置只是默認的東西。 說實話我沒有深入到重定向規則來理解該配置中的每一行。 – VangelisB 2011-05-19 08:55:11
你得到404嗎?你如何驗證字段是空的? 404聽起來更像是表單根本沒有得到處理。 – kolbyjack 2011-05-19 12:50:13