这是我个人波斯语网站的源代码。波斯语又名波斯语是从右到左书写的,但是有些人在消息应用程序和社交网络中使用罗马文字书写波斯语。
该存储库可供任何愿意构建新的从右到左网站的人使用。我逐渐解决在网站上撰写新帖子时遇到的问题。该网站是使用 Jekyll 静态站点生成器生成的。
在真正的静态网站(实际上是一堆文档)上拥有评论部分是不可能的。对于 HTML 表单,应在服务器上处理。该网站一开始使用 Disqus,然后使用 Netlify 表单,现在在我自己的自托管服务器上使用 CGI 脚本。该脚本将提交内容存储在 sqlite3 数据库中。请参阅 schema.sql 了解数据模型。构建脚本将注释从 sqlite3 数据库导出到数据文件中。这些文件依次用于在页面构建时生成静态注释。
我使用 nginx 和 fcgiwrap 来运行脚本。一些环境变量是必要的,例如数据库位置和作为谜题解决方案的简单值。
最新的评论部分使用 CGI 脚本和 sqlite3 数据库。为了运行 CGI 脚本,我使用了 fcgiwrap。在 Ubuntu 上安装后,我启用了fcgiwrap.service
。我使用以下块来处理 nginx 上的cgi-bin
路径:
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;
}
评论表单向cgi-bin/submit
URL 提交 POST 请求,该请求将由该脚本处理。 scripts/rebuild_commends.py
已更新以从 sqlite3 数据库重建注释。该路径应在ALEF_DB
环境变量中可用。有关构建命令,请参阅 Makefile。
请按照以下步骤制作您自己的网站:
为了正确构建网站,您必须将分叉存储库命名为与您的用户名不同的名称。如果你把它放在像yourusername.github.io这样的存储库下,Github 将使用它自己的 Jekyll 构建器来构建你的网站,无论你在gh-pages分支中放入什么。写作愉快!