Web portal (PBWeb)
PBWeb lets people use your board from a web browser: browse and download files, read and post messages in every supported message-base format, register, sign in with their board account, and use an in-browser terminal. PBDispatch owns the web port and starts a PBWeb.exe for each request. The in-browser terminal is powered by PBFtelnet.exe, which connects to your Telnet port.
Open Network > PBWeb Configuration in PBConfig to set it up. The settings are saved in Configs\PBWEB.CFG, which a new install creates for you with working defaults. The default port is 80 (HTTP). A secure web port is not built yet.
The PBWeb screen
Figure 1. Network > PBWeb Configuration in PBConfig. Here the web port has been changed from the default to 8080.
| Section | Settings |
|---|---|
| Listener | Web server enabled (the PBWeb portal and the fTelnet web terminal), Port, TLS Port (reserved) (not used yet) and Max Sessions. |
| Content Paths | Doc Root (the web pages, PBWeb\htdocs\ in the ProBoard folder in the picture), PHP CGI Path (optional), Sys Path (the ProBoard folder) and Msg Path (MSGBASE\). Each has a Browse… button. |
| Session & Login | Session Timeout (sec), Require login for file/message browsing, Apply BBS download limits, counters and log to web downloads, Allow new users to register on the web site (creates a BBS account) and Registrations per IP / day. |
| Logging | Log File, LOGS\PBWEB.LOG in the picture. |
| Portal Branding | BBS Name, Tagline, Telnet Host and Telnet Port: the name and the Telnet address shown on the site and used by the web terminal. |
| Web Terminal (fTelnet) | fTelnet Port (here 1123), fTelnet Max Sessions, an optional fTelnet Splash File and the fTelnet Splash Screen text box. |
The first two registration settings are described under “Accounts” below. After changing a port, restart PBDispatch, allow the port in Windows Firewall and forward it in your router if people reach the site from the Internet.
Accounts: registering, profile and password
When registration is turned on, visitors can create an account and manage it on the site.
| Page | What it does |
|---|---|
| /register | Create an account. Only when allowregistration yes is set in PBWEB.CFG and your new-user level in PBConfig is not 0. The account is created at once and the new member is signed in. |
| /profile | Edit handle, e-mail address, city, state, country and phone numbers. |
| /status | Read-only: level, calls, uploads and downloads, messages, today's usage, first and last call. |
| /settings | Change password (asks for the current one, then the new one twice). |
The sidebar shows Profile, Status, Settings and Log out to a signed-in user, and Log in (and Register, when on) to a visitor.
In PBConfig's PBWeb page, under Session & Login, set allowregistration (default no) and maxregistrationsperday (default 3, counted per IP address; 0 is no limit).
What a web sign-up creates
The same record the board creates for a new caller, using your New Users settings in PBConfig: level, log level and flags, date format, ANSI, language, and the default protocol, area and mail-check settings. The rules follow the board's own logon:
- Names are capitalised like the board does; names listed in
TRASHCAN.CTLare refused; one-word names need that option on. - City needs 3 or more characters. State, country and voice phone are asked only when the board asks for them. The birth date is required or optional as your settings say.
- The password must be at least your minimum length.
- Names may contain letters, digits, space,
.,\and-. Names such asnew,all,sysop,everyone,guest,systemand your own sysop name are refused. - An e-mail address is required.
Protection against abuse
- A hidden “honeypot” field and a one-time arithmetic question; the form must be submitted between 2 seconds and 30 minutes after it was shown.
- A per-address daily limit on registrations, counted from
LOGS\REGISTER.LOG. - POSTs from a page on a different site are refused.
- A wrong current password on the password form is answered after a one-second delay.
Things to know
- If a member is connected to the board in a terminal when they save their profile or change their password, the node still has the old record in memory and writes it back when the call ends, undoing the web change. The Profile page says so.
- Profile edits change only the listed fields.
- Handles can be edited even when your board has aliases off, but the board accepts a handle at logon only when aliases are on.
- Behind a reverse proxy, every visitor shares the proxy's address for the daily limit.
Downloads
Downloads from the web portal follow the same rules as downloads on the board and over FTP: daily limit, ratios, hours, free areas and the ledger in LOGS\DOWNLOAD.LOG.