การปรับใช้การอัพเดตเนื้อหาจากเซิร์ฟเวอร์ staging เป็นเซิร์ฟเวอร์สด


8

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

มีโมดูลที่สามารถทำสิ่งนี้และจัดการหน้าหนังสือได้หรือไม่?


ผมคิดว่านี่เป็นเรื่องที่เกี่ยวข้องค่อนข้างdrupal.stackexchange.com/q/137/134 คุณสามารถดูคำตอบที่นั่นและดูว่ามันช่วยหรือชี้แจงคำถามของคุณว่าทำไมมันแตกต่างกัน
Chaulky

คำตอบเหล่านั้นไม่ทำงานสำหรับหน้าหนังสือหรือลบ ทั้งสองอย่างมีความสำคัญต่อเรามาก นอกจากนี้การทำฐานข้อมูลแบบเต็มและการถ่ายโอนไฟล์ทุกครั้งดูเหมือนจะเป็นงานหนักเกินไป
antgiant

คุณสามารถสร้างเนื้อหาที่หยุดการผลิตขณะที่คุณกำลังเปลี่ยนระบบการแสดงละครได้หรือไม่?
BetaRide

คำตอบ:


3

UUIDและคุณสมบัติ UUIDช่วยให้คุณสามารถส่งออก Node ให้คุณลักษณะซึ่งอาจเป็นเพียงแค่สิ่งที่คุณหลังจากหมายความว่าจำเป็นต้องไปยุ่งกับฐานข้อมูลไม่มี


1

คุณได้ลองnode_exportและโยกย้ายการสำรองข้อมูล ทั้งสองโมดูลใช้สำหรับการย้ายเนื้อหาระหว่างการติดตั้ง Drupal นี่คือการเปรียบเทียบระหว่างโมดูลการนำเข้า / ส่งออกข้อมูลที่คุณอาจพบว่ามีประโยชน์



0

คุณสามารถลองใช้Phingซึ่งคุณสามารถทำได้โดยอัตโนมัติ:

  • ดัมพ์ฐานข้อมูล staging โดยใช้ mysqldump
  • คัดลอกไฟล์ mysqldump จากเซิร์ฟเวอร์หนึ่งไปยังอีกเซิร์ฟเวอร์หนึ่งโดยใช้การเข้ารหัส SCP และ Public-Private Key
  • อิมพอร์ต mysqldump จากระบบไฟล์ไปยังฐานข้อมูล
  • เรียกใช้คำสั่งคุณลักษณะเปลี่ยนกลับทั้งหมด ( drush fra -y) เพื่อให้เซิร์ฟเวอร์การผลิตของคุณรับการตั้งค่าการผลิต (เช่นบล็อกมุมมองบริบท ฯลฯ ) ที่พบในรหัสคุณลักษณะของคุณ

ปัญหาที่ฉันเห็นด้วยวิธีนี้:

คุณจะต้องทำการเอ็กซ์พอร์ตฐานข้อมูลที่ละเอียดมากซึ่งหมายความว่ารับเฉพาะโหนด, node_revisions, cck และเมนูตาราง

ในจุดสุดท้ายนั้น (ลิงก์เมนู) ยกเว้นว่าคุณเข้าถึงทั้งสเตจและเซิร์ฟเวอร์ของคุณโดยใช้ชื่อแทน URL เดียวกันคุณจะมีรายการไอเท็มเมนูที่แตกต่างกันและนี่จะเป็นปัญหาร้ายแรง


3
ฉันพยายามที่จะยึดติดกับโมดูล Drupal ถ้าเป็นไปได้ และความคิดนี้ตรงไปตรงมาดูเหมือนว่าเกิดอุบัติเหตุข้อมูลเสียหายที่รอให้เกิดขึ้น
antgiant

0

ฉันชอบวิธีการถ่ายโอนฐานข้อมูลเต็มรูปแบบซึ่งสามารถเขียนสคริปต์และมักจะเสร็จสมบูรณ์ในเวลาเพียงไม่กี่วินาที (การทำให้การแก้ไขของคุณอยู่ภายใต้การควบคุมและไม่รวมตารางแคชเป็นต้นสามารถลดขนาดลงได้มาก) คุณสามารถสร้างโมดูลอย่างง่ายเพื่อให้อินเทอร์เฟซสำหรับผู้เผยแพร่เนื้อหาเพื่อเริ่มกระบวนการนี้

คุณจำเป็นต้องบัญชีสำหรับเนื้อหาใด ๆ ที่คุณอาจยอมรับจากผู้ใช้เว็บไซต์สดของคุณเช่นความคิดเห็นหรือการส่งแบบฟอร์มการติดต่อ หากมี - น่าแปลกใจที่ไม่มี - คุณสามารถใช้บริการภายนอกเช่น Disqus สำหรับความคิดเห็นหรือ Marketo สำหรับรูปแบบการสร้างลูกค้าเป้าหมายแยกการส่งดังกล่าวออกเป็นฐานข้อมูล Drupal แยกต่างหากอย่างระมัดระวังหรือไม่เขียนทับอย่างระมัดระวัง ตารางที่ได้รับผลกระทบในระหว่างกระบวนการส่งออก / นำเข้า

ในที่ที่สามารถทำงานได้อาจเป็นวิธีที่ง่ายที่สุดเร็วที่สุดและเชื่อถือได้มากที่สุด และเว็บไซต์ที่ไม่ยอมรับการป้อนข้อมูลจากผู้ใช้ (นอกเหนือจากบริการภายนอก) เปิดประตูมากมายที่จะทำให้เร็วขึ้นและปลอดภัยยิ่งขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.