summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Löthberg <johannes@kyriasis.com>2014-10-15 23:03:32 +0200
committerJohannes Löthberg <johannes@kyriasis.com>2014-10-15 23:03:32 +0200
commit26f838287a059e7642f10df9d5c0abd80fa3e490 (patch)
tree7b765332190a969d4a138d6f5d75b55f8be64436
parent42bef0ad5a54f9b7ee78f837ec103b6199e4f573 (diff)
downloadwebsite-26f838287a059e7642f10df9d5c0abd80fa3e490.tar.xz
Add journal entry about isso. #2
-rw-r--r--src/journal/2-comments.rst40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/journal/2-comments.rst b/src/journal/2-comments.rst
new file mode 100644
index 0000000..7dffe53
--- /dev/null
+++ b/src/journal/2-comments.rst
@@ -0,0 +1,40 @@
+.. frontmatter
+ title: comments
+ date: 2014-10-15
+ author: Johannes Löthberg
+ author_link: /~kyrias/about.html
+
+Finally set it up so that each journal entry gets a separate page generated for itself too in addition to being on the `journal index`_. Each entry gets a file in the ``/~kyrias/journal/`` subdirectory named after the entry source file but with the extension changed to ``.html`` instead of ``.rst``.
+
+My first thought for which commenting system to use was disqus, but I don't really like using it at all in practice so I quickly decided against it. I do quite like discourse_ though and thought about setting it up, but that would require me setting up PostgreSQL and Redis, neither of which I feel like setting up nor that I would have any other use for, and both would use up quite a bit of resources for basically nothing, so discourse was out.
+
+After looking around for a bit and finding a few disqus clones I finally found isso_, which is named after either a German abbreviation or after the 360th_ Pokémon’s name in German. While it’s probably the first alternative, the second sounds more fun so I’ll just go with that.
+
+Isso is a rather simple commenting server written in python, uses Markdown for stylinx (hopefully I can get it to do reStructuredText too maybe), and using SQLite for storage which is a plus since it means I don't have to set up some big bulky SQL server. All you need to do to try it out is on the `quickstart page`_, but it roughly comes down to first installing isso (it’s installable through ``pip``), then writing a really short config file that tells isso where to store the SQLite database for comments and which hosts isso will be used on for CORS_. After that you just start isso up pointing it at the config file and it’s up and running. The client-side of isso is just ``script`` and ``section`` tag away, and then you’re done setting it up.
+
+Isso has support for simple moderation where new comments end up in a queue and has to be manually activated by going through a URL that can be emailed to you if you want, and things like rate limiting new comments. All of it is documented on the `server configuration`_ and `client configuration`_ pages, and there's also some info on the isso API and things like a comment counter. I could continue rambling about what it supports, but that would be rather pointless since it’s written so nicely on their website.
+
+Where I had some issues was getting it run properly under uWSGI_ and using NGINX_ as a reverse proxy, but it turned out after an hour of testing that I had installed uWSGI but not the python plugin. D’oh. Once I had that installed and added ``plugins = python`` to the uWSGI config file and adjusted my NGINX config file slightly since I run isso under a sub URI instead of on a separate domain it worked perfectly though.
+
+Here’s the config files I’m currently using:
+
+.. raw:: html
+
+ <script src="https://gist.github.com/kyrias/f7ec681e1c8c2effdb7e.js"></script>
+
+As far as I know the ``uwsgi_param HTTP_X_SCRIPT_NAME /isso;`` line is only needed if you’re running isso under a sub URI and I think it isn’t needed if you aren’t, but don’t quite me on that.
+
+I have yet to set up the moderation part of isso though, and that’s probably what I’m going to play with next.
+
+geros ilas.
+
+.. _journal index: https://theos.kyriasis.com/~kyrias/journal.html
+.. _discourse: http://www.discourse.org/
+.. _isso: https://posativ.org/isso/
+.. _360th: http://bulbapedia.bulbagarden.net/wiki/Wynaut_(Pok%C3%A9mon)
+.. _quickstart page: https://posativ.org/isso/docs/quickstart/
+.. _CORS: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
+.. _server configuration: https://posativ.org/isso/docs/configuration/server/
+.. _client configuration: https://posativ.org/isso/docs/configuration/client/
+.. _uWSGI: http://projects.unbit.it/uwsgi
+.. _NGINX: http://nginx.org/