2012-01-31 175 views
10

我有magento安裝在一個子目錄中。 www.domain.com/subdir/magento無法登錄到Magento管理員

本網站在一點上完美運作。我什麼都沒改變,直到我的客戶說他無法登錄到magento管理員。

我就好了登錄從我的電腦,但他的計算機上,它只是重定向回Magento的管理員登錄不顯示錯誤信息和URL看起來愚蠢的是這樣的:

http://domain.com/subdir/magento/index.php/admin/index/index/key/3097210b826ac4a86d7531cb4089c9d0/ 

我還以爲是自己cookies被阻止,但事實並非如此。

我Magento的設置是安全/不安全的BaseURL:http://domain.com/subdir/magento/

web cookie path: (blank) 
web cookie domain: (blank) 

清理出VAR /緩存後,我發現我自己無法登錄到管理或者,用完全相同的問題。

我嘗試以下設置沒有運氣:

path:/
domain: domain.com 

path: /subdir/magento 
domain: vigrond.com 

我也試過在Varien.php註釋掉這些行,但沒有任何效果。

我的服務器帳號是一個VPS,它有很大的可用空間。

所以我幾乎失去了,想知道爲什麼這發生在第一個地方,當它工作之前(沒有改變任何東西),爲什麼它如此複雜?

如果不顯示登錄錯誤消息(「密碼無效」等),它幾乎總是一個會話cookie的問題任何幫助表示讚賞

+0

在這裏檢查,你面臨的同樣的問題:http://magento.stackexchange.com/questions/85958/magento-admin-login-issue – joni 2015-10-12 12:07:28

回答

1

我從來沒有解決過這個問題。但我擦掉了客戶端計算機並重新安裝了Windows 7,並且工作正常。非常奇怪,之前沒有任何工作,因爲他不是代理的背後,沒有廣告或病毒。並在他的每個瀏覽器(Chrome瀏覽器和IE瀏覽器)中重現該問題。這不是路由器問題。這是一個Windows問題,但我無法告訴你究竟是什麼原因造成的。這也不是互聯網安全設置,因爲我檢查了這些設置。還檢查了主機文件。正如我以前說過,很莫名其妙

14

。爲了排除這種我們完全,使用使用瀏覽器的cookie的瀏覽器和/或你最喜歡的HTTP流量嗅探器和檢查

  1. 這所有的餅乾有適當的到期日期被設定

  2. 會話後cookie擁有爲每個請求一致的標記名稱/值

  3. 即PHP,通過Magento的運行時,有不同的會話有效期INI設置在一個合理的值

  4. PHP可以寫入任何它使用作爲cookie存儲介質

  5. 那個服務器的時間的實時匹配,而PHP本身所具有的時區設置

+0

是的,絕對是一個cookie問題。清除我自己的cookies後,我能夠再次登錄。但是,我已遠程登錄到客戶的計算機,但仍無法登錄。沒有設置cookie。這讓我感到困惑。他的cookies已啓用,我刪除了任何類型的跟蹤cookie保護。我可以登錄到Gmail,所以cookies正在工作。但magento不會給他一個cookie,但它會給我一個cookie。我感到很困惑。 – Vigrond 2012-01-31 07:22:10

+0

看起來,magento搞亂cookie和子域名(例如staging.store.com和store.com)......你將最終在管理員登錄中擁有cookie和問題的兩倍(我確信這是一個錯誤( – WonderLand 2014-05-29 14:56:22

+0

@ Vigrond如何清除cookie? – Anudeep 2015-06-19 06:09:50

4

你擦除會話存儲var目錄?

對我來說,當我與autorization玩的MultiStore的子域(改變路徑和域的cookie,你所做的那樣),這種方法幫我砸「壞」的cookie,sucessfuly logined在管理:

在APPPATH的/ var /會話目錄我在外殼採用命令(要小心的路徑,這可能會刪除目錄中的所有文件)

rm -rf /path/to/magento/var/session/* 

然後就是清理在瀏覽器領域的餅乾。

+0

我在這裏有一個空間問題,因此rm -rf *實際上解決了這個問題;-) – Andrew 2014-02-26 15:53:29

+3

注意:要注意使用rm -rf *可以清除整個magento安裝或服務器,如果這個命令直接運行錯誤 – 2015-04-30 20:44:55

0

我有同樣的問題,但我正在XAMPPWindows 7的64位

在Magento的系統 - 配置 - 網絡 - 會話cookie管理變革使用HTTP只有nocookie生存86400

我只改變了Cookie生存時間,只是夏令時可能不需要更改。

在更改之前,我只能使用Firefox進行登錄,並且在更改所有瀏覽器之後工作。

請假Cookie路徑Cookie域空白。

10

尋找app/code/core/Mage/Core/Model/Session/Abstract/Varien.php。在你的Magento安裝文件夾中。註釋掉(見下文)80至83行。行號可能會有所不同。

// set session cookie params 
    session_set_cookie_params(
     $this->getCookie()->getLifetime(), 
     $this->getCookie()->getPath()//, 
     //dependes which versin of mage you are using, you may comment these as well 
     //$this->getCookie()->getDomain(), 
     //$this->getCookie()->isSecure(), 
     //$this->getCookie()->getHttponly() 
    ); 

這是緩存的問題。最近Magento社區證實這是排序的,但事實並非如此。 :)

只要清除您的緩存,並執行此步驟它應該無論如何工作。

評論此行也

//  if (!$cookieParams['httponly']) { 
//   unset($cookieParams['httponly']); 
//   if (!$cookieParams['secure']) { 
//    unset($cookieParams['secure']); 
//    if (!$cookieParams['domain']) { 
//     unset($cookieParams['domain']); 
//    } 
//   } 
//  } 
// 
//  if (isset($cookieParams['domain'])) { 
//   $cookieParams['domain'] = $cookie->getDomain(); 
//  } 
  • 確保您在瀏覽器中啓用Cookie,嘗試了許多 不同的瀏覽器包括Safari或Opera。 Chrome會給出一些 的問題,您需要記住在 進行更改後清除您在Chrome中的緩存!

  • 確保您將文件權限設置爲每個人 - 對於Windows和適用於Mac/Linux環境的777爲完全控制如果仍然無法使用,請嘗試以下操作:(我不推薦此解決方案用於生產版本的Magento,但是對於你本地的測試環境來說,這將起作用。)

  • 檢查您正在使用的PHP版本。如果您正在使用最近的Magento,請嘗試查找哪個版本的PHP和擴展需要。

More details

+1

它爲我工作我做了一個混亂之前它:D,但實際上你的解決方案工作!在谷歌搜索前我去了phpmyadmin,我改變了密碼,所以我不知道加密ñ我把加密改爲md5然後再次登錄沒有運行n我嘗試了你的解決方案n現在我已經準備好了 – Nickool 2014-07-12 23:42:13

+0

很高興它工作了... – Fury 2014-07-14 08:11:13

+1

也爲我工作過!謝謝! – Ray 2014-09-25 21:42:06

0

檢查Cookie CONFIGS在core_config_data表,並檢查您的會話被保存在分貝。就我而言,有人只是用錯誤的值更改了cookie域和cookie路徑。

您還可以檢查這在您的應用程序的/ etc/local.xml中的節點上。 如果是在分貝,也許你應該改變你文件能夠直接清洗就VAR /會話目錄會話數據。

+0

如果th e會話存儲設置爲db,因此在負載均衡器後面啓用集羣的可能性很高,在這種情況下,當客戶端每次遇到不同節點時都會註銷,會出現更多會話cookie問題。 – Stephanie 2014-08-26 00:29:09

1

我這個問題今天打我的本地服務器上。我無法使用任何瀏覽器登錄。我真的不想評論核心文件中的任何行或做任何其他「髒」的解決方案。

首先我檢查了瀏覽器設置的cookie。它的到期日期設定爲1970年,顯然這是一個餅乾問題。

我檢查值在Magento數據庫餅乾。在phpmyadmin中,我發現表core_config_data,然後字段的值爲:web/cookie/cookie_domainweb/cookie/cookie_path。他們都是空白的。

我的解決辦法是設置:

網/餅乾/ cookie_domain我的域名

網/餅乾/ cookie_path到/。

例子:

您運行的Magento是magento.local 設置你的域:

網/餅乾/ cookie_path = magento.local

web/cookie/cookie_path =/

0

刪除Cookie從您的瀏覽器設置(與你的域名)。

0

我面臨同樣的問題,並在年底我發現,它充分的磁盤空間,並且由於這個Magento的無法在var VAR /會話文件夾中創建會話文件所致。清理問題已解決的日誌文件後。

0

此外,您還可以更新數據庫中的密碼,如果一切從上述其他沒有工作,你需要不顧一切訪問:

UPDATE admin_user SET password=CONCAT(MD5('qXpassword'), ':qX') WHERE username=‘user’; 

根據自己的需要更換用戶名和密碼的話。

-1

如果您沒有看到任何名爲「前端」或「adminhtml」的cookie,當您重新加載頁面時,未設置Magento cookie。在我的情況下,我有一個錯誤的cookie_domain。 我用「null」而不是「NULL」。

當我把我的cookie_domainNULLcore_config_data,問題解決了

0

如果實在不行,確保磁盤配額不超標。如果超過用戶的磁盤配額,則在./var/session下創建的新會話cookie將爲零字節。