Most of our members won't open the forum every day. An email when someone replies to them or mentions them would bring them back to the discussion.
Every topic, category, tag and profile page is rendered on the server, so the full text is in the HTML. On top of that:
- canonical URLs, Open Graph tags and
DiscussionForumPostingstructured data on topics /sitemap.xml, and RSS at/latest.rssand/top.rssrobots.txtthat keeps private pages out?page=links on lists and long topics that crawlers can follow- a topic URL with an old slug redirects to the current one
Set site_url on the Site Settings page, so that canonical URLs and the sitemap use your domain.
Casnode sends https://<the address in the browser>/callback, so that exact URL has to be in the application's Redirect URLs in Casdoor. http vs https and www vs no www count as different addresses.
Also check casdoorOrganization and casdoorApplication: only users of that organization can sign in.
conf/app.local.conf: same format as conf/app.conf, ignored by git, and every item in it overrides app.conf. Pulling a new version never conflicts with it.
Every item can also be set as an environment variable of the same name (clientSecret=...), which is what the Docker example does.
Put this in conf/app.local.conf:
driverName = postgres
dataSourceName = user=casnode password=secret host=localhost port=5432 sslmode=disable
dbName = casnode
On the first start Casnode creates the database if it's missing, then the tables. For MySQL it's driverName = mysql with dataSourceName = casnode:secret@tcp(localhost:3306)/, and mssql works for SQL Server.
Casnode doesn't move the data of the SQLite file into the new database, so either start fresh or copy it over with your own tools.
