
นี่คือซอร์สโค้ดของเว็บไซต์เปอร์เซียส่วนตัวของฉัน ภาษาเปอร์เซียหรือที่รู้จักกันในชื่อฟาร์ซีเขียนจากขวาไปซ้าย อย่างไรก็ตาม บางคนใช้สคริปต์โรมันเพื่อเขียนภาษาเปอร์เซียในแอปพลิเคชันการรับส่งข้อความและโซเชียลเน็ตเวิร์ก
พื้นที่เก็บข้อมูลนี้สามารถใช้ได้กับใครก็ตามที่ต้องการสร้างเว็บไซต์ใหม่จากขวาไปซ้าย ฉันค่อยๆ แก้ไขปัญหาที่ฉันพบขณะเขียนโพสต์ใหม่บนเว็บไซต์ของฉัน เว็บไซต์นี้จัดทำขึ้นโดยใช้โปรแกรมสร้างไซต์คงที่ของ Jekyll
การมีส่วนแสดงความคิดเห็นบนเว็บไซต์ที่คงที่อย่างแท้จริง (เอกสารจำนวนมาก) เป็นไปไม่ได้ สำหรับรูปแบบ HTML ควรได้รับการจัดการบนเซิร์ฟเวอร์ เว็บไซต์นี้ใช้ Disqus ในตอนแรก จากนั้นใช้แบบฟอร์ม Netlify และตอนนี้เป็นสคริปต์ CGI บนเซิร์ฟเวอร์ที่โฮสต์เอง สคริปต์จัดเก็บการส่งในฐานข้อมูล sqlite3 ดู schema.sql สำหรับโมเดลข้อมูล สคริปต์บิลด์ส่งออกความคิดเห็นจากฐานข้อมูล sqlite3 ไปยังไฟล์ข้อมูล ไฟล์เหล่านี้จะถูกใช้เพื่อสร้างความคิดเห็นแบบคงที่เมื่อสร้างเพจ
ฉันใช้ nginx และ fcgiwrap เพื่อรันสคริปต์ ตัวแปรสภาพแวดล้อมบางอย่างมีความจำเป็น เช่น ตำแหน่งของฐานข้อมูลและค่าอย่างง่ายเพื่อใช้เป็นปริศนา
ส่วนความคิดเห็นล่าสุดใช้สคริปต์ CGI พร้อมกับฐานข้อมูล sqlite3 สำหรับการรันสคริปต์ CGI ฉันใช้ fcgiwrap หลังจากการติดตั้งบน Ubuntu ฉันเปิดใช้งาน fcgiwrap.service ฉันใช้บล็อกต่อไปนี้เพื่อจัดการเส้นทาง cgi-bin บน nginx:
location /cgi-bin/ {
gzip off;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
include /etc/nginx/fastcgi_params;
fastcgi_param ALEF_DB "/path/to/my/sqlite/db";
fastcgi_param ALEF_PUZZLE "puzzle_answer";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
แบบฟอร์มความคิดเห็นส่งคำขอ POST ไปที่ cgi-bin/submit URL ซึ่งสคริปต์นี้จะจัดการ scripts/rebuild_commends.py ได้รับการอัปเดตเพื่อสร้างความคิดเห็นใหม่จากฐานข้อมูล sqlite3 เส้นทางควรมีอยู่ที่ตัวแปร env ALEF_DB ดู Makefile สำหรับคำสั่ง build
ทำตามขั้นตอนต่อไปนี้เพื่อสร้างเว็บไซต์ของคุณเอง:
เพื่อสร้างเว็บไซต์อย่างถูกต้อง คุณต้องตั้งชื่อพื้นที่เก็บข้อมูลแบบแยกให้แตกต่างจากชื่อผู้ใช้ของคุณ หากคุณวางไว้ใต้พื้นที่เก็บข้อมูลเช่น yourusername.github.io Github จะใช้ Jekyll builder ของตัวเองเพื่อสร้างเว็บไซต์ของคุณ ไม่ว่าคุณจะใส่อะไรไว้ในสาขา gh-pages มีความสุขในการเขียน!