เมื่อเร็ว ๆ นี้มีการเปลี่ยนแปลงอย่างมากในเว็บไซต์คงที่ในด้านการพัฒนาเว็บ ไซต์แบบคงที่ง่ายต่อการดูแลรักษา (ไม่มีฐานข้อมูล, ไม่มีสคริปต์ฝั่งเซิร์ฟเวอร์!) และมีความปลอดภัยมากขึ้นโดยทั่วไปเมื่อพิจารณาสิ่งเดียวที่ให้บริการกับอุปกรณ์ของผู้ใช้คือไฟล์ HTML, CSS และ Javascript เพื่อให้เว็บไซต์บางประเภทเช่นบล็อกและเว็บไซต์เอกสารเป็นแบบคงที่เพียงแค่เขียนโค้ดในไฟล์ HTML จะมีพลังมากขึ้น นอกจากนี้ยังกลายเป็นเรื่องยากสำหรับการบำรุงรักษาไซต์ที่มีเนื้อหาขนาดใหญ่โดยเฉพาะเมื่อจำเป็นต้องเปลี่ยนฟีเจอร์ขนาดเล็ก (เช่นการออกแบบ)
นี่คือที่กำเนิดเว็บไซต์แบบคงที่เข้ามากำเนิดเว็บไซต์แบบคงที่โดยทั่วไปแปลง (หรือรวบรวม) พวงของไฟล์ทรัพยากรที่แตกต่างกันเป็นเว็บไซต์เดียว ซึ่งหมายความว่าสามารถแยกเนื้อหาออกจากโค้ดเลย์เอาต์และเนื้อหาของไซต์เช่นรูปภาพสามารถแยกออกจากกันได้อย่างสมบูรณ์ มีตัวสร้างไซต์แบบสแตติกจำนวนมากออกไป นี่คือรายการของ 10 กำเนิดไซต์คงที่ที่ดีที่สุด พร้อมกับความคิดเห็นของพวกเขา
กำเนิดเว็บไซต์คงที่
1. Jekyll
ในหนึ่งคำ: King of Static Site generators Jekyll เป็นตัวสร้างสแตติกที่ใช้มากที่สุดด้วยเอกสารที่ยิ่งใหญ่ที่สุดชุมชนที่ใหญ่ที่สุดและการสนับสนุนที่ดีที่สุด แม้แต่ GitHub ก็สนับสนุน Jekyll ในบริการ GitHub Pages Jekyll ภาคภูมิใจในการตระหนักถึงบล็อก การสร้างบล็อกแบบคงที่ใน Jekyll นั้นง่ายมาก เพียงต้องการความรู้ในการพัฒนาเว็บขั้นพื้นฐานเท่านั้น มันส่องแสงจริงๆเนื่องจากมีคุณสมบัติการตั้งค่าที่ง่ายสำหรับผู้เริ่มต้นในขณะเดียวกันก็มีคุณสมบัติที่ทรงพลังสำหรับผู้ที่มีความรู้ในการใช้งาน
Jekyll ช่วยให้คุณสร้างและใช้ปลั๊กอินแท็กและแม้กระทั่งสร้างตัวแปลงของคุณเองสำหรับภาษามาร์กอัปใด ๆ ที่คุณต้องการใช้กับ Jekyll ภาษามาร์กอัปเริ่มต้นสำหรับ Jekyll ซึ่งส่วนใหญ่เป็นภาษาอื่นคือ Markdown Jekyll มีปลั๊กอินสำหรับการคอมไพล์ Less, Stylus, สร้าง tag clouds, หน้าผู้ใช้สำหรับบล็อก, และอีกมากมาย
Jekyll ขึ้นอยู่กับ Liquid Template Engine โดย Shopify มันทำงานบน Ruby ทั้งหมดดังนั้นจึงสามารถติดตั้งได้อย่างง่ายดายพร้อมกับการพึ่งพาโดยใช้ rvm หรือใช้ bundler Jekyll มีตัวเลือกการย้ายข้อมูลที่ง่ายเช่นกันหากคุณต้องการย้ายข้อมูลจาก WordPress, Blogger หรือเว็บไซต์บล็อกอื่น ๆ มันจะสร้างเครื่องกำเนิดไฟฟ้าไซต์คงที่อื่น ๆ ออกมาแจกในแง่ของขนาดผู้ใช้ อยู่ภายใต้การพัฒนาที่ใช้งานอยู่ (การเปลี่ยนแปลงล่าสุดของธุรกรรมซื้อคืน GitHub ที่จะเกิดขึ้นในวันก่อน ณ เวลาที่เขียน)
หากต้องการติดตั้ง Jekyll เพียงแค่ป้อนคำสั่งนี้ใน Ruby: gem install jekyll
2. นกกระทุง
Pelican เป็นเครื่องมือสร้างเว็บไซต์แบบสแตติกที่สร้างขึ้นบน Python มันมีการโพสต์เนื้อหาหลายภาษาการเน้นรหัส (ไวยากรณ์) รวมถึงการสร้าง RSS และ Atom Feeds ที่ง่าย Pelican มีโปรแกรมเสริมที่ดีให้เลือกซึ่งทั้งหมดนี้โฮสต์บนพื้นที่เก็บข้อมูลส่วนกลางของ GitHub สนับสนุนรูปแบบเอกสาร 3 รูปแบบโดยค่าเริ่มต้น: Markdown, reStructuredText และ Ascii Doc
นกกระทุงนั้นค่อนข้างมีเอกลักษณ์เนื่องจากมันถูกสร้างบน Python รองรับ Jinja Template Engine อันทรงพลังซึ่งใช้ python เพื่อให้สามารถสร้างธีมและเทมเพลตที่สวยงามสำหรับ Pelican ได้อย่างง่ายดาย ในแง่ของการสนับสนุนการโยกย้าย Pelican ให้การสนับสนุน WordPress และ Tumblr แทนที่จะเป็นไฟล์ YAML ปกติสำหรับการกำหนดค่า Pelican ใช้ไฟล์. py ชื่อ pelicanconf.py สำหรับการกำหนดค่าและการตั้งค่า
วิธีที่ง่ายที่สุดในการติดตั้งนกกระทุงคือการใช้ pip install pelican
: pip install pelican
3. คนกลาง
Middleman เป็นตัวสร้างเว็บไซต์แบบคงที่ที่ขับเคลื่อนด้วยทับทิมซึ่งทำตามวิธีการแรกในการสร้างเว็บไซต์แบบคงที่ มันมีคุณสมบัติที่มีประสิทธิภาพสำหรับการบำรุงรักษาบล็อกแบบคงที่เช่นการสร้างแท็กง่าย ๆ คำสั่งด่วนสำหรับการแสดงรายการบทความที่จัดหมวดหมู่ Middleman ไม่ได้ให้การสนับสนุนการโยกย้ายใด ๆ ดังนั้นหากคุณต้องการสร้างบล็อกที่มีอยู่คงที่ Middleman อาจไม่ใช่แนวคิดที่ดีที่สุดในตอนนี้
Middleman เสนอการสนับสนุนเครื่องมือที่ทันสมัยที่สุดในการพัฒนาเว็บเช่น HAML, Coffeescript, Sass และอื่น ๆ เอ็นจิ้นการสร้างเทมเพลตเริ่มต้นคือ eRb แต่อนุญาตให้คุณเปลี่ยนไปใช้เอ็นจินเทมเพลตที่คุณเลือกเอง เทมเพลตเอนจิ้นที่เปิดใช้งาน Tilt ทั้งหมด (สามารถดูรายการทั้งหมดได้ที่นี่) ทำงานกับคนกลาง สนับสนุนการกำหนดค่า 2 รูปแบบ - YAML, JSON Frontmatter สำหรับเนื้อหาของคุณจะต้องเป็น YAML หรือ JSON ขึ้นอยู่กับรูปแบบการกำหนดค่าที่คุณใช้
ติดตั้ง Middleman โดยใช้ Ruby พร้อมกับ: gem install middleman
4. โลหะมีค่า
Metalsmith มีความภาคภูมิใจในการเป็นตัวสร้างไซต์แบบคงที่ที่ เสียบปลั๊ก ได้ ซึ่งหมายความว่าตรรกะทั้งหมดของ Metalsmith นั้นได้รับการจัดการโดยปลั๊กอิน ฟีเจอร์ที่คุณต้องการเพียงเพิ่มปลั๊กอินที่จำเป็น จำนวนของปลั๊กอินที่นำเสนอโดย Metalsmith เต้นเกือบทุกคู่แข่ง (อาจยกเว้น Jekyll และ Docpad) ซึ่งหมายความว่า Metalsmith สามารถใช้เป็นมากกว่าเครื่องกำเนิดไซต์แบบคงที่
ในคำพูดของตนเอง “ เนื่องจากทุกอย่างเป็นปลั๊กอินไลบรารีหลักจึงเป็นเพียงนามธรรมสำหรับจัดการไดเรกทอรีของ ไฟล์” สิ่งที่เพิ่มขึ้นในที่สุดก็คือคุณใช้ Metalsmith เช่นเดียวกับโครงการ scaffolder ตัวสร้าง ebook เครื่องมือสร้างเอกสารทางเทคนิคและอื่น ๆ (ตัวอย่างเหล่านี้แสดงบนเว็บไซต์ Metalsmith)
Metalsmith ขึ้นอยู่กับ Node.js และสามารถติดตั้งได้โดยใช้ node package manager ด้วย: $ npm install metalsmith
Homepage
5. พิณ
พิณมีการประมวลผลล่วงหน้าสำหรับหยก, มาร์กดาวน์, น้อย, Sass, Coffeescript, EjS และ Stylus โดยไม่มีการกำหนดค่าเพิ่มเติมใด ๆ นอกจากนี้ยังให้คุณใช้เลย์เอาต์ / กระบวนทัศน์บางส่วน กับ Jade และ EjS ซึ่งต้องการปลั๊กอินพิเศษสำหรับเครื่องกำเนิดไฟฟ้าไซต์คงที่อื่น ๆ
Harp สร้างขึ้นบน Node.Js และสามารถทำงานร่วมกันกับ Harp Platform ซึ่งช่วยให้คุณสร้างหน้าเว็บจากโฟลเดอร์ Dropbox ของคุณ พิณยังสามารถรวบรวมหน้าเพื่อใช้กับหน้า GitHub, PhoneGap และ Heroku ได้เช่นกัน
ในการติดตั้งพิณใช้ npm และรัน: sudo npm install -g harp
โฮมเพจ
6. Octopress
ในทางเทคนิค Octopress เป็นทางแยก Jekyll แต่เนื่องจากความนิยมอย่างมากจึงได้รวมอยู่ในรายการนี้ Octopress นั้นเป็น Jekyll สำหรับแฮกเกอร์ (และผู้พัฒนาราง) การปรับแต่ง Octopress เป็นเรื่องง่ายโดยเฉพาะอย่างยิ่งถ้าคุณกำลังสร้างบล็อกเนื่องจาก Octopress โดยค่าเริ่มต้นมีปลั๊กอินจำนวนมากที่คุณจะต้องเรียกใช้บล็อกใน Jekyll
ในส่วนการปรับแต่งรหัสของ Octopress ทำให้ผู้ใช้สามารถแก้ไขรหัสได้ง่ายขึ้นและเขียนรหัสของตัวเอง ที่ถูกกล่าวว่าปลั๊กอินจำนวนมากสำหรับ Octopress เข้ากันได้กับ Jekyll (และในทางกลับกัน)
ในการติดตั้ง Octopress
- โคลน repo ของ GitHub
git clone git://github.com/imathis/octopress.git octopress
cd octopress
- ติดตั้งการพึ่งพา
gem install bundler
rbenv rehash
# ถ้าคุณใช้ rbenv, rehash เพื่อให้สามารถรันคำสั่ง bundlebundle install
- ติดตั้งชุดรูปแบบ Octopress เริ่มต้น
rake install
7. Docpad
Docpad เป็นเครื่องมือสร้างเว็บไซต์แบบคงที่ แบบไดนามิก มันขยายขีดความสามารถของตัวสร้างไซต์แบบสแตติกปกติด้วยคุณสมบัติเช่นการสืบค้นฐานข้อมูลผ่านเอ็นจินการสืบค้นการนำเข้าหน้าจากฐานข้อมูลภายนอกและการเรนเดอร์หน้าเว็บอีกครั้งในแต่ละคำขอ
Docpad มีการรองรับพื้นฐานสำหรับตัวประมวลผลล่วงหน้าเช่น Coffeescript, Stylus และ LESS และใช้ปลั๊กอินสำหรับสนับสนุนเทมเพลตเอ็นจิ้นตัวประมวลผลก่อนและภาษามาร์กอัปดังนั้นคุณสามารถเลือกชุดค่าผสมที่คุณต้องการโดยใช้ปลั๊กอินที่จำเป็น Docpad ยังรองรับการนำเข้าหน้าจากแหล่งข้อมูลภายนอกเช่น Tumblr, GitHub และ Dropbox ผ่านทางปลั๊กอิน
Docpad เป็นแพลตฟอร์มที่มีคุณสมบัติครบครันพร้อมด้วยปลั๊กอินและเอกสารมากมาย มันถูกสร้างขึ้นบนและใช้งาน Node.js สำหรับการโต้ตอบของเซิร์ฟเวอร์
เพียงติดตั้ง Docpad โดยใช้ npm: npm install -g npm; npm install -g [email protected]
npm install -g npm; npm install -g [email protected]
โฮมเพจ
8. Hexo
Hexo เป็นเฟรมเวิร์กบล็อกแบบสแตติกที่มีน้ำหนักเบาซึ่งภาคภูมิใจในความเร็วการสร้างเว็บไซต์ที่รวดเร็ว Hexo เหมาะสำหรับนักเขียนบล็อกที่มีเนื้อหาจำนวนมากที่ต้องการเครื่องมือสร้างเว็บไซต์แบบสแตติก มันมีตัวเลือกการโยกย้ายง่ายจากแพลตฟอร์มบล็อกอื่น ๆ เช่น WordPress, Joomla, Jekyll, Octopress และ RSS สิ่งที่ยอดเยี่ยมเกี่ยวกับ Hexo คือคุณสามารถใช้ปลั๊กอินส่วนใหญ่ที่สร้างขึ้นสำหรับ Octopress (และโดยการขยายปลั๊กอินที่สร้างขึ้นสำหรับ Jekyll ด้วยการปรับเปลี่ยนเล็กน้อย)
Hexo รองรับ Markdown, YAML สำหรับส่วนหน้าและการกำหนดค่า การรักษาด้วยลักษณะที่รวดเร็ว Hexo ช่วยให้คุณสามารถปรับใช้กับไซต์เช่น GitHub, Heroku และ Rsync ด้วยคำสั่งเดียว
Hexo สามารถติดตั้งได้โดยใช้ Node.js: npm install hexo-cli -g
9. ฮูโก้
Hugo เป็นเครื่องมือสร้างเว็บไซต์แบบสแตติกทั่วไปที่มีคุณสมบัติครบทุกด้านเช่นเทมเพลตและการสนับสนุนบางส่วนการแบ่งหน้าและ 'taxonomies' ซึ่งเป็นระบบการจัดหมวดหมู่เนื้อหาที่ไม่ซ้ำกันตามด้วย Hugo ซึ่งหมายความว่าคุณสามารถจัดประเภทการโพสต์ได้อย่างง่ายดายบนพื้นฐานของแท็กไม่เพียง แต่ในลักษณะอื่น ๆ ที่คุณต้องการเช่น หมวดหมู่ หรือ ซีรีส์ โดยตรงจาก frontmatter Hugo รองรับไฟล์ข้อมูลสามประเภท - YAML, JSON และ TOML และช่วยให้คุณตัดสินใจว่าไฟล์ใดที่เหมาะสมกับคุณที่สุด
แทนที่จะเป็นปลั๊กอิน Hugo ใช้ 'รหัสย่อ' ที่ให้คุณใช้เนื้อหาสมบูรณ์ภายใน Markdown ของคุณ หากต้องการทราบวิธีการทำงานของมันโปรดอ่านบทความนี้ Hugo เขียนด้วยภาษาโปรแกรม Go และมีไฟล์การติดตั้งแยกต่างหากสำหรับแพลตฟอร์มต่าง ๆ ในหน้า GitHub หากต้องการทราบว่าคุณสามารถติดตั้ง Hugo ให้ใช้งานได้อย่างไรให้อ่านคำแนะนำการติดตั้งสำหรับ Hugo
หากคุณใช้ Homebrew, Hugo และการอ้างอิงทั้งหมดสามารถติดตั้งได้ด้วย: brew install hugo
10. บรันช์
บรันช์เอนไปทางโปรแกรมเว็บ HTML5 มากกว่าบล็อกและเว็บไซต์ แต่มันก็ยังเป็นเครื่องมือสร้างเว็บไซต์แบบสแตติกที่ใช้งานง่ายและรวดเร็ว มันไม่เพียง แต่รวบรวมรหัสและสคริปต์ทั้งหมดของคุณเท่านั้น แต่ยังสามารถย่อ (ย่อขนาด) โค้ดของคุณและบีบอัดรูปภาพโดยอัตโนมัติ บรันช์มีโฮสต์ทั้งหมดของปลั๊กอินที่คุณสามารถใช้เพื่อปรับแต่งตามความต้องการของคุณ รายการทั้งหมดของปลั๊กอินบรันช์สามารถพบได้ที่นี่
บรันช์ให้บริการ 'โครงกระดูก' ซึ่งเป็นต้นแบบสำเร็จรูปสำหรับการเริ่มต้นเว็บไซต์ของคุณ (หรือแอปบนเว็บ) มันมีหนึ่งในความเร็วในการรวบรวมที่เร็วที่สุดเนื่องจาก Brunch แคชส่วนที่ไม่เปลี่ยนแปลงทั้งหมดในโครงการของคุณและรวบรวมเฉพาะไฟล์ที่ถูกแก้ไข บรันช์ถูกสร้างบน Node.js และสามารถติดตั้งได้โดยใช้ npm: npm install -g brunch
มีข้อเสนอแนะเกี่ยวกับบทความนี้หรือไม่? ทิ้งไว้ในความคิดเห็น!