Skip to content

Technical Support

Need help with installing or configuring NodeBB? Look here.

4.8k Topics 26.9k Posts

Subcategories


  • User documentation for NodeBB

    44 Topics
    44 Posts
    Jay MoonahJ
    One of the first important things to do after setting up NodeBB is to set up an emailer plugin. While NodeBB does include a local emailer, if your forum is particularly active we recommend using an third-party emailer such as SendGrid which provides better deliverability for sites that send a high volume of email. Setting up SendGrid in NodeBB is very easy. Open the administrative dashboard using the 'gear' icon on your forum. Open the Extend > Plugins menu, and select the Find Plugins tab. Use the search on the right. Type 'SendGrid' and the plugin should appear -- select Install when you see it. From Installed tab on the Plugins menu, search again for 'SendGrid' and select Activate. Activating the plugin will require a restart of your forum. To restart, select the Dashboard menu and press the Restart button to the right. After NodeBB restarts, the SendGrid plugin will be active. After you restart, there should be a item called Emailer (SendGrid) under the Plugins menu -- if you don't see this right away, try refreshing your browser. Sign up to SendGrid Go to the SendGrid website, open the pricing page and scroll to the bottom. Click on the link and create your free account. Once you've confirmed your SendGrid account via email, you should be able to login to the SendGrid website. On the left side of your SendGrid dashboard, open Settings and click on API Keys. Click the button in the top right to create a new key. Make sure that the key has Full Access for Send Mail and Alerts.  When you are done, the new key to your clipboard. Now, return to the SendGrid menu on your NodeBB admin panel. Paste the API key into the field, and save your changes. Now go back to the Dashboard to restart your forum one more time. SendGrid should now be working for your forum. [image: youtubelogo.png] Setting up SendGrid mailer for NodeBB
  • NodeBB guides, how-to's and general tips and tricks

    83 Topics
    601 Posts
    Z
    not sure the plugin worked for firefox. saw a-z in the sort icon. when i used it, i expected the topics in the category would be sorted a-z. they werent
  • 25 Topics
    201 Posts
    eeeeeE
    I think you answered my point, by agreeing there are issues. I didn't even attempt to deploy nodebb, I had problems with much smaller projects! Nextjs routing was going through a change of design at the time, so perhaps that is less confusing now, but there were multiple other headaches. I would get build errors and issues with package management.
  • 3.12.0 Upgrade Support

    Pinned
    23
    0 Votes
    23 Posts
    254 Views
    eeeeeE
    @phenomlab Thanks for your advice and help as always, its working now with fastmail, with your custom set up and the app password
  • Plugin setup

    Unsolved
    17
    0 Votes
    17 Posts
    112 Views
    codenamejessicaC
    I don't know what I am doing wrong. 33 hours just in the sidebar and I am not even closer than when I started. If I can just get 1 thing to work, I can figure out the rest. But nothing is working. Anybody wants to give it a go: https://www.github.com/girls-whocode/nodebb-theme-codename Basically, I am trying to make it with the same modules as https://codenamejessica.com the dev site I am building this on is https://jbrowns.com
  • Dark Theme Code Snippets

    Unsolved
    5
    +1
    0 Votes
    5 Posts
    37 Views
    julianJ
    @baris if the dark theme exposes a sass variable then perhaps markdown could read it
  • Email confirmation not triggering when approving user

    Unsolved
    5
    1 Votes
    5 Posts
    105 Views
    Jordan TaylorJ
    Hi Julian, so it sounds like our client needs to amalgamate the two emails into one so that the button to confirm is given? They've repurposed the welcome template to have a really nice intro to new users and was conscious that the confirmation message may be lost among the helpful info. In terms of what happens: User registers with email address as mandatory, opted in to emails too Admin approves user via the registration queue User gets welcome email but no confirmation email User has pending icon / X after 24h due to email not being verified. Further edit: Apologies Julian, just revisited the translations and can see that welcome.cta does have the confirm your email address prompt via the welcome template. I think there was some confusion that came about as the template was heavily modified and so that was removed...
  • User, group, tag and more pages do not have canonical URL

    Solved
    14
    1 Votes
    14 Posts
    354 Views
    Justas AznaJ
    @baris yeah, it seems you're right about pagination. They have changed their recommendation it seems. Thanks for getting back.
  • NodeBB error on startup

    Unsolved
    8
    0 Votes
    8 Posts
    108 Views
    codenamejessicaC
    I just wanted to take a moment to acknowledge how amazing all of you are in working with this system. While this little bug might be frustrating, I’m confident we can figure it out. I’m committed to finding a solution and contributing to making this one of the best systems out there! Thank you for all the incredible work you do. (Besides I like breaking things... Why is it only on a Monday though, Mondays are my busiest days HAHA)
  • Am I Missing Something?

    Unsolved
    1
    0 Votes
    1 Posts
    73 Views
    codenamejessicaC
    Ok, I may be the weird one here, but I want to display Powered by NodeBB on the forums of my site. Although it is not there, I know I can put it in a widget and display it in the global footer. But I am surprised that it isn't there by default. Did I accidently turn it off? Is it not there by default on the Peace Theme? Thought I would ask first.
  • Allow User Data and Cookies Cross Domain

    Unsolved
    5
    1 Votes
    5 Posts
    118 Views
    codenamejessicaC
    Actually, figured it out! I would like to tell you what I did, but I really don't know. I broke my CSRF tokens, then in pure panic fixed it by messing around with the nginx config. But let me show you what is working: The nginx config above (I edited it with the new one) This code here for the Logout: updateUserNavForLoggedInUser(userData) { const navContainer = document.getElementById('elUserNav'); const userPicture = userData.picture ? `<a href="https://discussions.codenamejessica.com/user/${userData.username}" rel="nofollow" class="nodebbUserPhoto nodebbUserPhoto--fluid nodebbUserNav__link" title="Go to ${userData.username}'s profile"> <img src="${userData.picture}" alt="${userData.username}" class="nodebbUserNav__avatar"> </a>` : `<a href="https://discussions.codenamejessica.com/user/${userData.username}" rel="nofollow" data-nodebb-hook="userNoPhotoWithUrl" class="nodebbUserPhoto nodebbUserPhoto--fluid nodebbUserNav__link" title="Go to ${userData.username}'s profile"> <div class="nodeBBNavNoPhotoTile"> ${this.getInitial(userData.username)} </div> </a>`; navContainer.innerHTML = ` <li data-el="profile"> ${userPicture} </li> <li data-el="logout"> <button class="nodebbUserNav__link" id="logoutButton"> <i class="fa-solid fa-right-from-bracket" aria-hidden="true"></i> <span class="nodebbUserNav__text">Log Out</span> </button> </li> `; // Attach the logout functionality to the button document.getElementById('logoutButton').addEventListener('click', this.logoutUser); }, logoutUser() { axios.get('https://discussions.codenamejessica.com/api/config', { withCredentials: true, // Include cookies }) .then(response => { const csrfToken = response.data.csrf_token; // Extract CSRF token return axios.post('https://discussions.codenamejessica.com/logout', {}, { withCredentials: true, // Include cookies headers: { 'x-csrf-token': csrfToken, // Use retrieved CSRF token }, }); }) .then(() => { window.location.href = 'https://codenamejessica.com/'; }) .catch(error => { console.error('Error logging out:', error); alert('Failed to log out. Please try again.'); }); }, Ultimately It took getting the user's x-csrf token, which I acquired by adding the x-csrf items and adding the logout to the api section of the nginx config. Then I was able to acquire the x-csrf from the const csrfToken = response.data.csrf_token;. Sending that in with a post, and redirect back to the website. AGGHHH! That was hard! Don't judge me, I see your eyes giving me those looks.
  • Persona logo too small

    Solved
    3
    0 Votes
    3 Posts
    67 Views
    kainosK
    @baris said in Persona logo too small: You can use the custom css tab to change the height on persona, something like below. .header .forum-logo { max-height: 75px; // default is 50px for persona width: auto; } So simple, thanks baris
  • Email missing while API create user

    Solved
    4
    0 Votes
    4 Posts
    69 Views
    barisB
    You can read more info here https://community.nodebb.org/topic/16962/all-about-emails-and-how-they-re-used-in-nodebb, tldr version is passing in email to user.create only sends a confirmation email to that email and doesn't set the email to the user account. Only when the user clicks the link in the confirmation email it is set into the user account.
  • Redirect Users to Another Website for Registration

    Unsolved
    3
    0 Votes
    3 Posts
    144 Views
    S
    I've managed to do it with this plugin : https://github.com/julianlam/nodebb-plugin-session-sharing
  • Acitavation email

    Unsolved
    5
    0 Votes
    5 Posts
    83 Views
    codenamejessicaC
    Let's see if we can break this down. This is what happened to me. I made sure 25, 443, 465, and 587 were open in the firewall, but email was still being blocked with similar messages. I contacted IONOS (my hosting provider), and they told me that port 25 blocks any mail attempt and it needs to be opened before 587 would work. I think is stupid (or a croc of $h..) but here we are, they opened port 25 and everything is working again. 550-Requested action not taken: mailbox unavailable: This indicates that the recipient's email address couldn't be found or is inaccessible on their mail server. 550-Sender address is not allowed: This means the recipient's mail server has blocked your server's sender address or domain. 550 1MspyA-1tdm9M1E6a-012smp: This is a unique identifier for the error on the recipient's server, not very helpful for troubleshooting. Here's a breakdown of potential causes and how to troubleshoot them: Recipient Email Address Issues: Typo in the email address: Double-check for any typos in the recipient's email address. Even a small mistake can cause this error. Always start with the simplest solution, and also make sure the mailbox exists and isn't full. (I am sure you have already tried these, but it doesn't hurt to double-triple check) Sender Reputation and Authentication: Sender address is blacklisted: Your server's IP address or sending domain may be on a blacklist due to past spam complaints or issues. You can use tools like MXToolbox to check if your server's IP is blacklisted. Lack of proper authentication: The recipient's server may require authentication (like SPF, DKIM, or DMARC) to verify that your server is authorized to send emails from the sender's domain. Make sure these authentication methods are correctly set up for your domain. Reverse DNS issues: The recipient server might be checking for a valid reverse DNS record for your server's IP address. Ensure that your server has a proper PTR record that matches your domain name. Server Configuration Problems: Firewall issues: A firewall on your server or the recipient's server might be blocking the connection or specific ports needed for email communication. Incorrect MX records: MX records tell email servers where to deliver mail for your domain. If your domain's MX records are incorrect, emails might be sent to the wrong server. Relaying issues: The recipient's server may be configured to prevent relaying, which is when a server sends an email to a recipient that's not hosted on that server. This is a security measure to prevent spam. Other types of troubleshooting Check your server logs: Look for any error messages or clues about why the email was rejected in your mail server logs (e.g., /var/log/mail.log). Contact the recipient's email provider: If you suspect the issue is on their end, you may need to reach out to their email provider for assistance. Once you get it working, don't forget to: Use an email testing tool: Tools like Mail-tester.com can help you diagnose email deliverability problems and identify potential issues with your server configuration or sender reputation. Codename: Jessica Linux Enthusiast | Adventurer | Smart Ass My Site | Join the Forum [image: 9wqynsG.png] [image: endpoint?url=https%3A%2F%2Fquotes.codenamejessica.com%2Frandom-quote&cacheSeconds=10&style=for-the-badge]
  • Navbar on the top for Harmony as Persona

    Solved
    13
    0 Votes
    13 Posts
    326 Views
    kainosK
    @baris said in Navbar on the top for Harmony as Persona: That setting is at /admin/settings/general#home-page you can change the home page to /recent there. Thanks @baris
  • Couldn't set default admin username and password in config.json

    13
    0 Votes
    13 Posts
    3k Views
    BatchfyB
    @PitaJ Why not just accepting a config.json file as input to node setup? This would be way more convenient for automated setup. The string arguments and escapes are sooooo anoying.
  • ./nodebb build error and form go down ! Need help

    Unsolved
    4
    1 Votes
    4 Posts
    78 Views
    codenamejessicaC
    Also verify you are using node 22.11 Codename: Jessica Linux Enthusiast | Adventurer | Smart Ass My Site | Join the Forum [image: 9wqynsG.png] [image: endpoint?url=https%3A%2F%2Fquotes.codenamejessica.com%2Frandom-quote&cacheSeconds=10]
  • Chat keeps blocking users

    Solved
    8
    +1
    0 Votes
    8 Posts
    86 Views
    N
    Oh gee, I was changing the other thing in chat. I changed this one now too.
  • Harmony theme on mobile devices small bug fix

    Solved
    4
    +2
    1 Votes
    4 Posts
    63 Views
    barisB
    @juse thanks. Fixed in https://github.com/NodeBB/nodebb-theme-harmony/commit/143f3dd4ad879ea869710e0833659834700f4bd7
  • Pimp my NodeBB (codes for the holidays/christmas theme)

    31
    +0
    4 Votes
    31 Posts
    1k Views
    kainosK
    @julian said in Pimp my NodeBB (codes for the holidays/christmas theme): @kainos looks like you put those widgets in your global container. Try moving them to categories.tpl Thanks julian, I still have to learn.
  • Original image stays on server after upload

    Solved
    5
    0 Votes
    5 Posts
    91 Views
    julianJ
    @Paweł might be a good third party plugin? Some forums (e.g. photography) would definitely hate their images to be resized.
  • This topic is deleted!

    Unsolved
    2
    0 Votes
    2 Posts
    5 Views