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

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

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingอยากทราบเทคนิคการ coding ให้สามารถ update version อัติโนมัติแบบ Wordpress,Joomla
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: อยากทราบเทคนิคการ coding ให้สามารถ update version อัติโนมัติแบบ Wordpress,Joomla  (อ่าน 456 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
wch2013
คนรักเสียว
*

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

กระทู้: 106



ดูรายละเอียด
« เมื่อ: 14 กุมภาพันธ์ 2016, 02:42:36 »

ผมรบกวนปรึกษาพี่ ๆ หน่อยครับ

ยกตัวอย่างให้เห็นง่าย ๆ เช่น Wordpress, Joomla, OpenCart
CMS พวกนี้ เวลามีอัพเดทอะไรใหม่ ๆ ก็จะมีปุ่มโผล่ขึ้นมาให้เรากดตามรูปด้านล่าง

คือผมอยากทราบอะครับว่าเขาทำกันยังไง พอกดปุ่มปุ๊ป โปรแกรมจะทำการอัพโหลดไฟล์หรือแก้ไข database ต่าง ๆ บนโฮสต์ของได้โดยอัติโนมัติ

ถ้าเป็นผมตอนนี้ก็คิดได้แค่ส่งไฟล์ให้ users ไป upload ทับลงไปเอง แต่บางคนไม่มีความรู้เกี่ยวกับพวกนี้เลย ผมก็เลยต้องจัดการให้
ซึ่งผมอยากจะตัดปัญหานี้ออกไป เพราะถ้ามี users ใช้งานเยอะขึ้น ก็จะไม่สะดวกเท่าไหร่ถ้าต้องตามไปทำให้ทุกคน

ใครพอจะทราบเทคนิคแบบนี้ รบกวนแนะนำและแชร์ความรู้ให้ผมเป็นวิทยาทาน เพื่อนำไปพัฒนางานต่อไปด้วยครับ

ขอบคุณครับ

 wanwan017


« แก้ไขครั้งสุดท้าย: 14 กุมภาพันธ์ 2016, 02:50:12 โดย wch2013 » บันทึกการเข้า
Putter™
หัวหน้าแก๊งเสียว
*

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

กระทู้: 2,102



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 14 กุมภาพันธ์ 2016, 03:23:10 »

1 ) Step แรกต้องมีการส่ง API กลับไปหา Server ก่อนครับ เช่นถ้ามีการเข้าหน้า Dashboard ก็จะมี Ajax call ไปเช็ค version ล่าสุด ก็ get version ปัจุบันของเราไปเทียบกับล่าสุด ถ้ามันน้อยกว่าก็ขึ้นปุ่ม Update มาให้กด
2 ) หลังจากเช็คได้ว่า curent version ไม่ตรงกับ lastest version บน Server ก็สั่งให้ download ไฟล์มา ซึ่งส่วนใหญ่เป็น zip มาครับ และการ update แต่ละ version จะมีการแก้ไขไฟล์บางส่วนไม่ได้แก้ไขทั้งหมด เรียกว่า incremental update ไม่ใช่ full update ครับ ก็ทำตาม Business logic เลยครับ
  - Download incremental update มาไว้ที่ /tmp  (สมมตินะครับ)
  - แตกไฟล์ จะได้
         /update.php
        /sql/1.11-1.1.2.sql
        /file/1.php
        /file/2.php

  - ระบบจะรันไฟล์ update.php ในนั้นก็อาจจะ alter table หรือรันพวก แก้ไข database จากไฟล์ 1.11-1.1.2.sql แล้วก็ทำการเอา 1.php , 2.php ไปทับ หรือเพิ่มใน core system ครับ

หลักการประมาณนี้ครับ

จริงๆมันมีอะไรที่ซับซ้อนกว่านี้ครับก่อนจะรันไฟล์ update เพราะต้องเช็คให้แน่ใจก่อนว่าสิทธิ์ที่จะอัพเดทได้หรือเปล่า เช่น สิทธิ์ไฟล์ funtion ที่จะใช้งาน  server timeout บราๆๆ

ลองไล่อ่าน code ของ wordpress ก็ได้ครับเป็น open source

โค๊ด:
https://codex.wordpress.org/Configuring_Automatic_Background_Updates
« แก้ไขครั้งสุดท้าย: 14 กุมภาพันธ์ 2016, 03:30:50 โดย Putter™ » บันทึกการเข้า

Ruk-Com Hosting (IAAS)
Ruk-Com Cloud (PAAS)
รีวิวโฮสติ่ง Ruk-Com  จากสมาชิก THAISEO

ไม่พอใจยินดีคืนเงินเต็มจำนวนทุกบริการ
หน้า: [1]   ขึ้นบน
พิมพ์