It might be easier to integrate Raneto with nodeBB
Moritz Friedrich
Posts
-
Wiki style page editing? -
400 and 522 errors since enabling SSL via Nginx proxyAlternatively, my working configuration for clustering enabled + SSL:
# redirects http requests to https server { listen 80; # change this! server_name example.com; # change this! return 301 https://example.com$request_uri; } # create multiple instances for scaling upstream io_nodes { ip_hash; server 127.0.0.1:4567; server 127.0.0.1:4568; server 127.0.0.1:4569; } # the actual encrypted server server { listen 443 ssl spdy; # change this! server_name example.com; ssl on; # change this! ssl_certificate /etc/nginx/ssl/bundle.crt; #change this! ssl_certificate_key /etc/nginx/ssl/site.de.key; # enables all versions of TLS, but not SSLv2 or 3 which are weak and now deprecated. ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # disables all weak ciphers ssl_ciphers 'AES128+EECDH:AES128+EDH'; ssl_prefer_server_ciphers on; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_redirect off; # Socket.io Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; # watch out - no quotes! proxy_set_header Connection upgrade; gzip on; gzip_min_length 1000; gzip_proxied off; gzip_types text/plain application/xml application/x-javascript text/css application/json; location @nodebb { proxy_pass http://io_nodes; } location ~ ^/(images|language|sounds|templates|uploads|vendor|src\/modules|nodebb\.min\.js|stylesheet\.css|admin\.css) { # change this! root /var/www/nodebb/public/; try_files $uri $uri/ @nodebb; } location / { proxy_pass http://io_nodes; } }
-
Forum performanceDepends. I run a community of about 600 users, on certain occasions (2 times a month) we have about 250 concurrent users online. After preparing NodeBB in the background on a second level tier DigitalOcean VPS (1CPU, 512GB RAM) which ran excellent after initial development, we decided to go online at one of those high peak events.
It was a disaster, honestly I had no experience with NodeJS before, so I didn't know what performance issues to expect. The site slowed down really fast when the first 60 visitors were online, at the time there were 100 of them, it got unuseable, so we made an emergency conference call and decided to go down, upgrade the VPS and power on again. That took 5 minutes, the rest of the event went smoothly afterwards (The community was not upset at all but rather proud of bringing a whole server to it's knees ;)).So for reference:
We went for the 2CPU/1GB RAM option for 25$/month. That one managed 40.000 pageviews in an hour from 298 concurrent visitors (guests and members), no noticeable delay, with 79% CPU and about 80% RAM usage. I currently have three NodeBB workers enabled with Redis as a DB and nginx as reverse proxy, all over SSL (coming to think of it, that should have a performance impact aswell). SSH monitoring with top was running, too.This might give you an impression
-
[nodebb-plugin-ns-points] NS Points, Forum Gamification@Nicolas This is really promising! I've got a few questions, though:
- Can I set the level thresholds manually?
- Can I setup custom notifications for specific levels? (Read: achievements)
- Is there some kind of API to award points on custom events? (So I can give extra points to SSO users on first login, etc)
-
400 and 522 errors since enabling SSL via Nginx proxyI had a hard time too while configuring. Try this one:
### redirects http requests to https server { listen 80; server_name forum.example.org; return 301 https://forum.example.org$request_uri; } ### the https server server { # listen on ssl, deliver with speedy if possible listen 443 ssl spdy; server_name forum.example.org; ssl on; # change this path! ssl_certificate /path/to/cert/bundle.crt; # change this path! ssl_certificate_key /path/to/cert/forum.example.org.key; # enables all versions of TLS, but not SSLv2 or 3 which are weak and now deprecated. ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # disables all weak ciphers ssl_ciphers 'AES128+EECDH:AES128+EDH'; ssl_prefer_server_ciphers on; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://127.0.0.1:4567/; proxy_redirect off; # Socket.IO Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }
-
Schedule Post?Did you manage to build a plugin? I'd be interested in this. Thanks!
-
Show accumulated child category topics and posts on categories pageWe have only four categories which hold all other subcategories and have no own topics or posts. Due to this, guests coming to the homepage, they get the impression we have no content yet. Is there a way to show accumulated counters on each category?
Like this:- Cat A (88 topics, 2.316 posts)
- Cat A.1 (51 topics, 754 posts)
- Cat A.2 (29 topics, 1.242 posts)
- Cat A.3 (8 topics, 320 posts)
- Cat A (88 topics, 2.316 posts)
-
Sharing Windows Server with Nodebb and WordpressOkay. First off: Change the secret in your config.json immediately, you should never post it anywhere online.
You should change the url here to "http://theamericanbulletin.com/forum". That way, NodeBB can deliver static resources with the correct path (remember, the client will request each resource based on this address which gets then parsed in the IIS).What are the rewrite rules shown in the ISS console?
-
Forum performanceIt is not necessarily a redis issue but more due to the way Node.js works - after all, my guess is, for large forums, you may be better off using a PHP solution, unless you want to invest in a setup like, one load balancer, two to four db servers, four to eight app servers serving nodebb, one mailserver, one for firewall and security, a development box, ... you see where this is going
-
Wiki style page editing?@frissdiegurke I stumbled across it while searching one for a project at work, liked it very much and contributed some needed patches..
I rather meant using NodeBBs login system there, that should not be that much of a hassle. -
Sharing Windows Server with Nodebb and WordpressIt's important that you know what these URLs mean. Look at this:
- Client requests
theamericanbulletin.com/forum
. - IIS revieves a request for
theamericanbulletin.com/forum
and routes it tolocalhost:8080
orlocalhost:4567
. - NodeBB recieves a request from the client and uses
theamericanbulletin.com/forum
as a base URL to construct its relative links, eg.theamericanbulletin.com/forum/category/1/test
. - The client recieves the NodeBB page from
theamericanbulletin.com/forum
.
That means, you have to configure the IIS to rewrite
theamericanbulletin.com/forum
tolocalhost:4567
(or:8080
respectively, that doesn't really matter apart from convention). NodeBB instead will think it sits ontheamericanbulletin.com/forum
all along.
If you need further help setting up the rewrite rules, let me know. - Client requests
-
Forum performance@hek said:
Node.js is very efficient due to it's non-blocking asynchronous nature. It beats PHP every day.
Not arguing on that. Comparing NodeBB to the previous MyBB PHP-based board though, I can see that the community simply consumes much more resources than before and becomes slower the more requests are coming in. I never experienced a slowdown of multiple seconds when using MyBB.
I mean I love NodeBB, it is a question of sufficient hardware though. -
Native electron clientI'm currently using Electron to build a desktop client for an Express app which just transforms API JSON responses into views.
Now I was thinking it would be great to have a boilerplate, customizable NodeBB client built with Electron. It could be customized to fit the board style, use real OS notifications, open chats in real modal windows, integrate better file browsing and upload and so on. I bet gaming board developers would also be pleased to have native Steam integration etc.
Would anyone be interested in building such a client together?
-
Mention a username with spaces@julian said:
So I'd have to make multiple hits against the database to check if the following users exist:
- John
- John Frikkin
- John Frikkin Doe
- John Frikkin Doe how
- John Frikkin Doe how are
- John Frikkin Doe how are you
- John Frikkin Doe how are you today
See the problem?
I thought about this while posting the thread. I think I'll just disallow spaces in usernames
But hey, thank you for the extensive reply!
-
Autostarting loader.jsHad the same problem. What keeps you from just using
cd /var/www/mynodebb/ && sudo ./nodebb start
?