PS:此問題偶之前也遇到過,但解決后沒記錄下來。今天給公司配一臺新服務器安裝phpmyadmin(公司程序員要使用)時又遇到了這個問題,就記錄一下吧。
問題如下 :
php環境已經配好,正常。phpmyadmin不能登錄,不論密碼輸入是否正確,都沒有任何錯誤提示,自動跳轉回到登錄頁面。
解決方法 :
1、在php.ini 找到session.save_path 這一行,設成session.save_path = “/var/lib/php/session”,并把前面的分號去掉。
以上的/var/lib/php/session根據你實際情況設定。
2、修改此目錄的權限和屬主:
# chown -R nobody:nobody /var/lib/php/session
(nobody權限很低,最好設置它為web運行賬戶!)
# chmod 777 /var/lib/php/session
(session目錄至少設置770權限以上,否則phpmyadmin登錄會有問題。)
3、重啟相關服務,如果是apache,就重啟apache服務:/etc/init.d/httpd restart;如果是nginx,就重啟php-fpm服務:/etc/init.d/php-fpm restart
之后phpmyadmin就可以正常登陸,連接mysql數據庫了。新版的UI好看了很多!
最新版的phpmyadmin下載地址:
http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.4.2/phpMyAdmin-3.4.2-all-languages.tar.gz
編輯補充:wget sourceforge.net上的phpmyadmin有時會很慢,只有幾KB,phpmyadmin官方也經常無法訪問,建議可從chinaz等知名站點查找下載phpmyadmin for linux的正式版本。不可隨意在網上下載,避免被加入后門程序。
總結:
導致上述問題和一些與php程序相關的錯誤(如php不保存session),原因在于:沒有給php設置session的臨時目錄!
6月12日補充:今天發現系統時間出錯也會出現這個問題!如果按照上面的步驟修改之后還不能登錄,請把系統時間修改正確!誤差要在一分鐘之內!google上貌似還沒人說過時間錯誤導致的這個問題。
新聞熱點
疑難解答