ระบบความชอบและความคิดเห็นสำหรับโปรโตคอลราศีเมถุนโดยเฉพาะอย่างยิ่งสำหรับ gemlogs! ใช้งานได้โดยใช้ CGI ดังนั้นจึงไม่มีเซิร์ฟเวอร์เพิ่มเติมให้เรียกใช้
นี่เป็นโครงการของเล่น/สาธิตส่วนใหญ่ มันใช้งานได้และฉันก็ใช้มันบน gemlog ของฉัน แต่มันถูกสร้างขึ้นอย่างรวดเร็วและไม่ได้รับการออกแบบมาอย่างดี ด้วยเหตุนี้ repo นี้จึงถูกเก็บถาวร ดูโพสต์บล็อกของฉันสำหรับรายละเอียดเพิ่มเติม
อาจตรวจสอบ nimlike แทน!
เยี่ยมชม gemini://makeworld.space/gemlog/2020-05-21-first.gmi (พร็อกซี) เพื่อดูการสาธิตของมันในการดำเนินการ นี่คือตัวอย่างผลลัพธ์:
# 2020-05-21-first.gmi
15 likes!
=> like?2020-05-21-first.gmi Add yours
4 comments
=> add-comment?2020-05-21-first.gmi Add yours
ben (id: 7ec5a44d) @ Sun, 24 May 2020 04:49:11 UTC:
hello there!
makeworld (id: 4f9da128) @ Sun, 24 May 2020 04:45:06 UTC:
Test 3
makeworld (id: 4f9da128) @ Sun, 24 May 2020 04:32:26 UTC:
Test number 2
makeworld (id: 4f9da128) @ Sun, 24 May 2020 04:23:53 UTC:
Test comment.
ความคิดเห็นจะแสดงด้วยล่าสุดที่ด้านบน
มี ข้อผิดพลาดในเซิร์ฟเวอร์ Molly Brown Gemini ที่ทำให้ Gemlikes ไม่ทำงาน โปรดอัปเดต Molly Brown ของคุณเพื่อส่ง 2e4a10297e หรือใหม่กว่าถ้าคุณใช้มัน เซิร์ฟเวอร์อื่น ๆ ควรจะดี
มีสามไบนารีที่จะติดตั้ง: view like และ add-comment
cgi-bin/gemlikes/ นอกจากนี้ยังมีไฟล์กำหนดค่าที่ต้องอยู่ในไดเรกทอรีเดียวกันด้วยชื่อ gemlikes.toml ชื่อนี้ไม่สามารถเปลี่ยนแปลงได้ ดูไฟล์ตัวอย่าง config.toml ใน repo เพื่อดูตัวเลือกที่มีอยู่ คุณจะต้องสร้างและเปลี่ยนไฟล์ config มันจะไม่ทำงานหากไม่มีใคร
ในที่สุดสร้างไฟล์ robots.txt ที่รูทของไซต์และไม่อนุญาตให้บอทใด ๆ เพื่อเข้าถึงไบนารี like และ add-comment เพื่อป้องกันการไลค์โดยไม่ตั้งใจจากตัวรวบรวมข้อมูล นี่คือไฟล์ตัวอย่างหากมีการติดตั้งไบนารีใน /cgi-bin/gemlikes/ :
User-agent: *
Disallow: /cgi-bin/gemlikes/like
Disallow: /cgi-bin/gemlikes/add-comment ตัวเลือกที่ง่ายที่สุดคือการดาวน์โหลดไฟล์ .tar.gz ที่เหมาะสมจากหน้ารีลีสแยกออก ( tar xvfz filename ) และย้ายทั้งสามไบนารีไปยังไดเรกทอรีที่เหมาะสมตามที่ระบุไว้ข้างต้น
หากคุณติดตั้ง GO Toolchain คุณสามารถโคลน repo (ไม่ go get ) จากนั้นเรียกใช้ single-build.sh ไบนารีจะอยู่ในโฟลเดอร์ build ที่สร้างขึ้นใหม่พร้อมที่จะย้าย
gemlikes.toml ของคุณhostname.tld/path/to/gemlikes/view?file-name.gmi ตัวอย่างเช่นหากไฟล์อยู่ที่ gemini://example.com/gemlog/first-post.gmi และไบนารีของฉันอยู่ที่ gemini://example.com/cgi-bin/gemlikes/ นี่คือสิ่งที่ไฟล์ควรมีลักษณะ:
<blog post text here, blah blah>
=> gemini://example.com/cgi-bin/gemlikes/view?first-post.gmi View likes and comments!
Gemlikes มีการคุ้มครองบางอย่างเพื่อป้องกันการละเมิดหรือการแอบอ้างความคิดเห็นและระบบความชอบ โปรดทราบว่าผู้ดูแลระบบเซิร์ฟเวอร์สามารถแสดงความคิดเห็นและชอบพูดอะไรก็ได้ที่พวกเขาต้องการ
gemlikes.tomlgemlikes.toml เท่านั้นที่สามารถเป็นเหมือนและแสดงความคิดเห็นได้ - การพยายามอ้างอิงไฟล์ที่ไม่มีอยู่จะทำให้เกิดข้อผิดพลาด /myfile.gmi และไฟล์อื่นที่ /dir/myfile.gmi , gemlikes จะปฏิเสธที่จะแสดงหรือดำเนินการเพราะไม่ทราบว่ามีการอ้างถึงอันไหนgemlikes.toml หากมีการระบุเพียงหนึ่งเดียวเช่น /dir จะไม่มีปัญหาใด ๆGemlikes ได้รับใบอนุญาตภายใต้ใบอนุญาตสาธารณะ GNU Affero ทั่วไปเวอร์ชัน 3 ประเด็นหลักของใบอนุญาตนี้คือแม้ว่าคุณจะแก้ไขรหัสและไม่แจกจ่ายซอฟต์แวร์ให้กับใครก็ตามคุณจะต้องปล่อยการเปลี่ยนแปลงของคุณหากคุณใช้รหัสนี้บนเซิร์ฟเวอร์สาธารณะ โปรดดูไฟล์ใบอนุญาตสำหรับรายละเอียด