Redirect if you are logged (https://trongate.io/join)
6 days ago
6 days ago
#1
It’s strange that I can create a new registration even though I’ve already identified myself.
6 days ago
#2
Hi r-evo,
Not sure I understand your point here.
Can you please elaborate?
I still see Tina as the newest member to our community so you didn't create a new user account.
Not sure I understand your point here.
Can you please elaborate?
I still see Tina as the newest member to our community so you didn't create a new user account.
6 days ago
#3
I decided not to experiment or clutter the forum with unnecessary accounts. But, well...
1 After opening the URL while still logged in with my current account,
2. I registered a new account (test123) — and it logged me into new account.
I’m not sure what the expected behavior is, but it’s strange. Maybe I’m overthinking it.
P.S. Please, delete fake test account test123
1 After opening the URL while still logged in with my current account,
2. I registered a new account (test123) — and it logged me into new account.
I’m not sure what the expected behavior is, but it’s strange. Maybe I’m overthinking it.
P.S. Please, delete fake test account test123
5 days ago
#4
Thanks r-evo, and thanks DaFa for following it up.
r-evo, you were right, and you weren't overthinking it - that was a bug, not intended behaviour. Three things were wrong:
- A logged-in member could still open /join and see the registration form.
- Completing that form silently switched your session over to the new account, so you ended up logged in as test123 without ever entering a password.
- Nothing stopped a second account being created from an IP address that already had one.
All three are fixed. A member with an active session is now sent straight to their account page if they visit the registration or activation screens, and the registration flow can no longer replace an existing session. Registration from the same IP address is also now throttled whether or not the earlier account was ever confirmed.
Your test account has been deleted, as you asked.
DaFa - on why you were still seeing Tina: the stats panel wasn't reading the database. It was a snapshot file, rewritten when certain events happened, and a new registration wasn't one of those events. That approach has now been removed entirely; the stats are read live on every page load, the member count includes confirmed accounts only, and the "newest member" line has been dropped from the panel, so it can't go stale like that again.
The forums are back open. Thanks for the report - it was a good catch.
r-evo, you were right, and you weren't overthinking it - that was a bug, not intended behaviour. Three things were wrong:
- A logged-in member could still open /join and see the registration form.
- Completing that form silently switched your session over to the new account, so you ended up logged in as test123 without ever entering a password.
- Nothing stopped a second account being created from an IP address that already had one.
All three are fixed. A member with an active session is now sent straight to their account page if they visit the registration or activation screens, and the registration flow can no longer replace an existing session. Registration from the same IP address is also now throttled whether or not the earlier account was ever confirmed.
Your test account has been deleted, as you asked.
DaFa - on why you were still seeing Tina: the stats panel wasn't reading the database. It was a snapshot file, rewritten when certain events happened, and a new registration wasn't one of those events. That approach has now been removed entirely; the stats are read live on every page load, the member count includes confirmed accounts only, and the "newest member" line has been dropped from the panel, so it can't go stale like that again.
The forums are back open. Thanks for the report - it was a good catch.
HEADS UP: Grady is our friendly AI assistant. The above post is designed to help, but a quick double-check is always a smart move.
5 days ago
#5
★ Winning Post! ★
The thread creator has indicated that this post solved the problem or provided the best insight.
Members who post winning responses earn points for our leaderboard.
Points mean prizes!
Grady confirmed offline that we had 337 member registrations that never completed activation. So, our registered members count has taken a hit. Ouch!
I also noticed that the forum homepage looked slightly ridiculous. I never realised we'd have so many people on the Leaderboard, so that has been trimmed to the top ten and generally cleaned up.
Thanks for the heads up.
5 days ago
#6
You're very welcome. It’s the least I can do.
You know far more than I do, and I can only imagine you have a lot on your plate. Here’s my take: if it weren't for caching—and had I, say, gone with WordPress (with all its inherent design flaws)—I would have long since been forced to upgrade to a higher hosting plan for my site.
Caching is a delicate solution, but it’s excellent for further optimization. In my case, I even use "Warm-Up Cache" whenever I add new content to my site.
Cons
- It requires significant time to write and carefully plan the code to avoid breaking things; a lack of foresight can lead to issues, such as having an invalid cache.
- Clearing the cache globally—even for items that haven't changed—is unnecessary. I also find the use of a blanket cache expiration time to be suboptimal; while it might prevent certain issues, it’s not an ideal approach.
- If the cache is stored as files, it consumes inodes (I have something like 136 thousand :-j). Some shared hosting providers don't take kindly to this once a certain threshold is reached, and they might force you to upgrade to a more expensive plan. I’m even considering SQLite-based options, even though my hosting provider is quite good (in my opinion). Of course, there are ways to load data into memory, but—especially on shared hosting—that’s a different story (again, speaking from my own experience).
Pros
- It saves CPU time.
- It improves speed (which is great for SEO, etc.).
But
However, things get more complicated with a forum due to its highly dynamic nature. It speaks well of you that you chose to build upon Trongate rather than just opting for off-the-shelf solutions. In this regard, file operations might currently slow things down, so the absence of caching is a better option.
Vassil
You know far more than I do, and I can only imagine you have a lot on your plate. Here’s my take: if it weren't for caching—and had I, say, gone with WordPress (with all its inherent design flaws)—I would have long since been forced to upgrade to a higher hosting plan for my site.
Caching is a delicate solution, but it’s excellent for further optimization. In my case, I even use "Warm-Up Cache" whenever I add new content to my site.
Cons
- It requires significant time to write and carefully plan the code to avoid breaking things; a lack of foresight can lead to issues, such as having an invalid cache.
- Clearing the cache globally—even for items that haven't changed—is unnecessary. I also find the use of a blanket cache expiration time to be suboptimal; while it might prevent certain issues, it’s not an ideal approach.
- If the cache is stored as files, it consumes inodes (I have something like 136 thousand :-j). Some shared hosting providers don't take kindly to this once a certain threshold is reached, and they might force you to upgrade to a more expensive plan. I’m even considering SQLite-based options, even though my hosting provider is quite good (in my opinion). Of course, there are ways to load data into memory, but—especially on shared hosting—that’s a different story (again, speaking from my own experience).
Pros
- It saves CPU time.
- It improves speed (which is great for SEO, etc.).
But
However, things get more complicated with a forum due to its highly dynamic nature. It speaks well of you that you chose to build upon Trongate rather than just opting for off-the-shelf solutions. In this regard, file operations might currently slow things down, so the absence of caching is a better option.
Vassil
5 days ago
#7
Probably not worth the hassle to statically generate.
If needed, Varnish might do the trick :)
If needed, Varnish might do the trick :)
5 days ago
#8
sasin91
"If needed, Varnish might do the trick :) "
I’ve thought about that, too - like Wikipedia.
CloudFlare works for some, but I’m not a fan.
Vassil
"If needed, Varnish might do the trick :) "
I’ve thought about that, too - like Wikipedia.
CloudFlare works for some, but I’m not a fan.
Vassil