ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์CMS & Free Scriptช่วยด้วยคะ รีสโตร์ลงเว็บเซิร์ฟเวอร์จำลองในเครื่อง แล้ว Error
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ช่วยด้วยคะ รีสโตร์ลงเว็บเซิร์ฟเวอร์จำลองในเครื่อง แล้ว Error  (อ่าน 1560 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
it191
Newbie
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 81



ดูรายละเอียด
« เมื่อ: 18 ธันวาคม 2013, 13:38:51 »

 wanwan006 แบ็คอัพเว็บไซต์จริงแต่รีสโตร์ลงเว็บเซิร์ฟเวอร์จำลองในเครื่องของตัวเอง ใช้ XAMPP จำลองเซิร์ฟเวอร์

ไฟล์ .jpa  + Kickstart.php ทำไปจนถึงขั้นตอน RUN THE INSTALL เสร็จเรียบร้อยแล้ว ลบไฟล์  installation เสร็จแล้ว

ก็เกิดปัญหา

Fatal error: Call to a member function get() on a non-object in C:\xampp\htdocs\weba\libraries\joomla\cache\storage\memcache.php on line 114

ไปดูที่ memcache.php  --->        $back = self::$_db->get($cache_id); 

line 111 - 115 เป็นแบบนี้คะ --> public function get($id, $group, $checkTime = true)
   {
      $cache_id = $this->_getCacheId($id, $group);
      $back = self::$_db->get($cache_id);
      return $back;

รบกวนผู้รู้ช่วยด้วยคะ งมมาหลายวันแล้ว โดยส่วนตัวไม่มีความารู้เรื่อง PHP เท่าไร่คะ

ขอบคุณทุกคนไว้ก่อนเลยนะคะ

  wanwan011 wanwan011
บันทึกการเข้า
chaitat
Newbie
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 60



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 18 ธันวาคม 2013, 15:23:20 »

จาก error message พบว่าเว็บแอปปลิเคชั่นของท่านมีการใช้งาน memcache ซึ่งเป็นระบบการเก็บข้อมูลชั่วคราวไว้ใน RAM (ซึ่งจะอ่านเขียนได้เร็วกว่าการเก็บข้อมูลชั่วคราวใส่ไฟล์บนฮาร์ดดิสก์ แต่ก็เปลืองแรมกว่า) โดยทั่วไปการจะใช้ memcache ได้ ท่านต้องมี memcache server รันอยู่บนเครื่องคอมพิวเตอร์ของท่าน ส่วนทางเว็บแอปปลิเคชั่น ก็จะเขียนโค้ดให้ทำการใช้งาน memcache นั้น โดยใน configuration มักต้องกำหนดว่า memcache server ของท่านอยู่ที่ ip ไหน และ port ไหน

คาดเดาว่าทาง server ของท่านมี memcache server รันอยู่แล้ว แต่ที่คอมพิวเตอร์ของท่านอาจไม่มี

คาดเดาว่าท่านต้องติดตั้ง memcache server ที่เครื่องของท่าน และ ต้องรู้ว่ารันที่ port ไหน จากนั้นทำการกำหนด configuration ในเว็บแอปปลิเคชั่นของท่าน ให้ ip ของ memcache server เป็น 127.0.0.1 และ port เป็น port ที่ memcache ของท่าน listen อยู่

เล่ามาจากประสบการณ์การใช้ memcache ของผมนะครับ  wanwan011
บันทึกการเข้า

PaySure.com เครื่องมือที่ทำให้การซื้อขายสินค้า, ซอฟต์แวร์, โดเมนเนม และอื่นๆ ออนไลน์ ไม่มีทางถูกโกง 100%

ผู้ขาย: ท่านไม่จำเป็นต้องสร้างความน่าเชื่อถืออีกต่อไป
ผู้ซื้อ: ท่านไม่ต้องลังเลที่จะซื้อสินค้าออนไลน์อีกต่อไป ไม่ถูกโกงแน่นอน 100%
it191
Newbie
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 81



ดูรายละเอียด
« ตอบ #2 เมื่อ: 18 ธันวาคม 2013, 15:42:40 »

จาก error message พบว่าเว็บแอปปลิเคชั่นของท่านมีการใช้งาน memcache ซึ่งเป็นระบบการเก็บข้อมูลชั่วคราวไว้ใน RAM (ซึ่งจะอ่านเขียนได้เร็วกว่าการเก็บข้อมูลชั่วคราวใส่ไฟล์บนฮาร์ดดิสก์ แต่ก็เปลืองแรมกว่า) โดยทั่วไปการจะใช้ memcache ได้ ท่านต้องมี memcache server รันอยู่บนเครื่องคอมพิวเตอร์ของท่าน ส่วนทางเว็บแอปปลิเคชั่น ก็จะเขียนโค้ดให้ทำการใช้งาน memcache นั้น โดยใน configuration มักต้องกำหนดว่า memcache server ของท่านอยู่ที่ ip ไหน และ port ไหน

คาดเดาว่าทาง server ของท่านมี memcache server รันอยู่แล้ว แต่ที่คอมพิวเตอร์ของท่านอาจไม่มี

คาดเดาว่าท่านต้องติดตั้ง memcache server ที่เครื่องของท่าน และ ต้องรู้ว่ารันที่ port ไหน จากนั้นทำการกำหนด configuration ในเว็บแอปปลิเคชั่นของท่าน ให้ ip ของ memcache server เป็น 127.0.0.1 และ port เป็น port ที่ memcache ของท่าน listen อยู่

เล่ามาจากประสบการณ์การใช้ memcache ของผมนะครับ  wanwan011

ขอบคุณมากๆ คะ ตอนนี้เข้าดูข้อมูลหลังบ้านได้ แต่ไม่สามารถทำการเปลี่ยนแปลงใดๆได้ เพราะติดไฟล์ Memcache.php ของ Joomla ตัวนี้ละคะ

 wanwan023 wanwan023

บันทึกการเข้า
chaitat
Newbie
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 60



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 18 ธันวาคม 2013, 15:50:18 »

ลอง disable memcache บนเครื่องท่านดุไหมครับ

configuration.php

หาบรรทัดประมาณนี้

โค๊ด:
public $caching = '2';
public $cache_handler = 'memcache';
public $memcache_server_host = 'localhost';
public $memcache_server_port = '11211';

หากเจอให้เปลี่ยนเป็น

โค๊ด:
public $caching = '0';public $cache_handler = 'file';

แต่อย่าไป copy file นี้ขึ้น live site นะครับ เพราะบน server ให้ใช้ memcache ดีกว่า ไวกว่า

 wanwan007
บันทึกการเข้า

PaySure.com เครื่องมือที่ทำให้การซื้อขายสินค้า, ซอฟต์แวร์, โดเมนเนม และอื่นๆ ออนไลน์ ไม่มีทางถูกโกง 100%

ผู้ขาย: ท่านไม่จำเป็นต้องสร้างความน่าเชื่อถืออีกต่อไป
ผู้ซื้อ: ท่านไม่ต้องลังเลที่จะซื้อสินค้าออนไลน์อีกต่อไป ไม่ถูกโกงแน่นอน 100%
it191
Newbie
*

พลังน้ำใจ: 7
ออฟไลน์ ออฟไลน์

กระทู้: 81



ดูรายละเอียด
« ตอบ #4 เมื่อ: 18 ธันวาคม 2013, 16:09:14 »

ลอง disable memcache บนเครื่องท่านดุไหมครับ

configuration.php

หาบรรทัดประมาณนี้

โค๊ด:
public $caching = '2';
public $cache_handler = 'memcache';
public $memcache_server_host = 'localhost';
public $memcache_server_port = '11211';

หากเจอให้เปลี่ยนเป็น

โค๊ด:
public $caching = '0';public $cache_handler = 'file';

แต่อย่าไป copy file นี้ขึ้น live site นะครับ เพราะบน server ให้ใช้ memcache ดีกว่า ไวกว่า

 wanwan007

ขอบคุณ คุณ chaitat มากคะ ตอนแรกก็คิดที่จะปิด memcache ตรง configuration.php คะ แต่มาเจอคำแนะนำก่อน เลยทำตาม

ตอนนี้หน้าบ้าน เข้าดู ผ่าน localhost ได้แล้วคะ

เพื่อนๆ ที่เจอปัญหานี้ ก็คงไ้ด้อีกวิธีแก้ไขและความรู้เหมือนกันนะคะ


 Cry Cry Cry
บันทึกการเข้า
chaitat
Newbie
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 60



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 18 ธันวาคม 2013, 16:12:59 »

ยินดีด้วยครับ  wanwan019
บันทึกการเข้า

PaySure.com เครื่องมือที่ทำให้การซื้อขายสินค้า, ซอฟต์แวร์, โดเมนเนม และอื่นๆ ออนไลน์ ไม่มีทางถูกโกง 100%

ผู้ขาย: ท่านไม่จำเป็นต้องสร้างความน่าเชื่อถืออีกต่อไป
ผู้ซื้อ: ท่านไม่ต้องลังเลที่จะซื้อสินค้าออนไลน์อีกต่อไป ไม่ถูกโกงแน่นอน 100%
takaeshi
ก๊วนเสียว
*

พลังน้ำใจ: 5
ออฟไลน์ ออฟไลน์

กระทู้: 268



ดูรายละเอียด
« ตอบ #6 เมื่อ: 18 ธันวาคม 2013, 19:35:08 »

เข้ามาเก็บกระทู้ครับ  ยังไม่เคยเจอปัญหานี้ครับ
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์