Coding

Khắc phục tình trạng không thể đăng nhập vào admin sau khi cài đặt Magento trên localhost

Sau khi cài đặt phiên bản Magento ver 1.7 trên localhost rất nhiều bạn gặp phải trường hợp không đăng nhập được vào admin trên localhost, do vậy đã gây khó khăn cho không ít bạn mới tìm hiểu Magento và cài đặt trên localhost để nguyên cứu nó. Bài viết sau sẽ đưa ra một số giải pháp giúp bạn có thể đăng nhập được vào admin để thưởng thức nó.

login_magento_admin

Có nhiều cách khắc phục tình trạng này sau đây tôi xin đưa ra một số giải pháp sau:

1. Bạn thử thay địa chỉ domain (localhost) bằng địa chỉ IP ví dụ: thay http://locahost/magento/admin thànhhttp://127.0.0.1/magento/admin rồi tiến hành đăng nhập với user và pass của bạn. Sau khi đăng nhập thành công bạn tiến hành config lại base url trong phần config trong cpanel.

2. Bạn tìm tới thư mục này: C:WINDOWSsystem32driversetc và nhìn thấy file có tên là “host”, hãy mở file này lên bằng notepad hoặc một editor nào đó bạn sẽ nhìn thấy dòng sau:

127.0.0.1 localhost

Thêm vào dòng giống như sau: 
127.0.0.1 localhost 
127.0.0.1 test.magento

Sau đó lưu lại và đi đến trình duyệt gõ vào đường dẫn test.magento/magento/admin để đi đến khu vực đăng nhập và tiến hành đăng nhập bình thường.

3. Nếu cả 2 cách trên mà bạn không thể đăng nhập được thì cách này giúp bạn khắc phục được 100% 
Bạn tìm đến đường dẫn này: app/code/core/Mage/Core/Model/Session/Abstract/Varien.php và mở file Varien.php bằng một trình soạn thảo nào đó (không dùng notepad nhé) rồi tìm tới dòng 70 bạn sẽ nhìn thấy code sau: 

// set session cookie params
 session_set_cookie_params(
 
$this->getCookie()->getLifetime(),
 
$this->getCookie()->getPath(),
 
$this->getCookie()->getDomain(),
 
$this->getCookie()->isSecure(),
 
$this->getCookie()->getHttponly()
 );

 

và thay thế nó bằng code sau: 

// set session cookie params
 session_set_cookie_params(
 
$this->getCookie()->getLifetime(),
 
$this->getCookie()->getPath()
 
//$this->getCookie()->getDomain(),
 //$this->getCookie()->isSecure(),
 //$this->getCookie()->getHttponly()
 
);

 

Sau đó lưu lại và thử đăng nhập trở lại nhé

4. Cách này sẽ modify code để Magento không kiểm tra tên miền website có dấu chấm (dot) hay địa chỉ Ip nữa và bạn làm như sau:

Mở:

appcodecoreMageCoreModelCookie.php

tìm đến function sau:

getDomain()

 

và thay nó bằng: 

public function getDomain()
{
$domain 
Mage::getStoreConfig(self::XML_PATH_COOKIE_DOMAIN$this->getStore());
if (empty(
$domain)) {
$domain 
$this->_getRequest()->getHttpHost();
}

if(count(explode('.'$domain)) < '2')
{
$domain 
gethostbyname($domain);
}

return $domain;
}

 

Sau đó lưu lại và thử đăng nhập lại nhé. Chúc bạn thành công. 
Nếu có lỗi gì phát sinh các bạn Comment phí dưới nhé

0 Bình luận

Trở về
  • HTML5 Canvas
  • HTML5 Canvas

     The <canvas> element is used to draw graphics, on the fly, on a web page. Draw a red rectangle, a gradient rectangle,...