2026-01-02
Refactored Version Update Detection System
-
Refactored the version update detection system to support the new remote API format
-
Update popup now displays current version, latest version, and release time
-
Supports rendering update logs in HTML format
-
Added forced update functionality; management backend operations are blocked during forced updates
-
Forced updates display a fullscreen overlay; users must update before continuing
-
Non-forced updates support “Remind Me Later” to close the popup
-
Added multilingual support (Chinese/English) for version update features
2026-01-01
Coupon Product Type Selection
-
Coupons now have an “Applicable Product” option; can choose: All, Domain, or VPS Hosting
-
Coupon list in admin backend displays product type tags
-
Auto-validate coupon product type match when users use a promo code
-
Database migrates automatically to add
applicable_typefield
VPS Hosting Plan Server Binding
-
Plan management now supports server selection; can specify which server the plan is created on
-
If not specified, automatic load balancing is applied
-
Associated server names are displayed in plan list
-
Purchase page filters plans based on server settings
Batch Delete Feature in Admin Backend
-
Host instance management page now supports batch delete, including multi-selection
-
Orders management page now supports batch delete, including multi-selection
-
Added select all/deselect all functions
-
Shows progress indicator during deletion
-
Fixed issue where deleting hosts was only performing soft delete; now records are fully removed from the database
-
Domain bindings associated with a host are also cleaned when the host is deleted
VPS Hosting Run Directory, Rewrite, and SSL Management
-
Added run directory settings, supporting frameworks like Laravel/ThinkPHP to set public directory
-
Added rewrite rule management, supports popular templates for WordPress, ThinkPHP, Laravel, etc.
-
Added SSL deployment, supports manual certificate upload (private key and cert)
-
Added one-click Let’s Encrypt free certificate application
-
New force HTTPS toggle; easily enable/disable HTTP to HTTPS redirection
-
SSL info display (issuer, expiration date)
VPS Hosting PHP Version Management
-
Added PHP version switching; users can select PHP version on host details page
-
New hosts now use the server’s default PHP version (not pure static)
-
Fetches list of installed PHP versions on the server
-
Displays current and available PHP versions on host detail page
VPS Hosting Online File Management
-
Added online file manager; users can manage website files via the web client
-
Supports browsing directories and viewing file lists
-
Create files/folders
-
Edit text files online (html/css/js/php/txt etc.)
-
Rename/delete files and folders
-
Added batch selection: select all/multi-select files
-
Added batch copy/cut/paste
-
Added batch delete
-
New compression functionality; compress files/folders into zip packages
-
Decompression: supports zip/tar/gz etc.
-
Path safety check to ensure only user’s own website directory is accessible
-
Fixed parsing bug with Baota API file list format
-
Fixed incompatibility with paths between Windows dev environments and Linux servers
VPS Host Domain Binding Feature
-
Added VPS host domain binding management
-
Host detail page displays bound domain list
-
Supports add/delete domain bindings (limited by plan)
-
Domain bindings auto-sync to Baota Panel
-
New
vhost_domainstable to store binding info
2025-12-31
VPS Hosting Distribution Module
-
Added VPS hosting distribution features, automates creation and management via Baota Panel API
-
Admin backend has new VPS host management menu: servers, plans, hosts, orders
-
User side adds VPS features: buy host, my hosts, host details
-
Supports server load balancing, automatically selects server with lowest load
-
Supports renew, pause, resume, delete for hosts
-
Auto-generates FTP and database credentials
-
Host details page shows FTP & DB connection info
-
Added expiry check cron job script
scripts/check_vhost_expiry.py -
Supports expiration reminder emails (7, 3, and 1 day in advance)
-
Expired hosts are automatically paused and status updated
Alibaba Cloud DirectMail Support
-
Added Aliyun DirectMail email push support
-
Supports switching between SMTP and Aliyun API sending modes
-
System settings page in admin backend adds Aliyun mail config
-
Added test mail-sending API, allows testing current config
Admin Domain Record Lookup Fixes
-
Fixed 404 error when querying DNS records in admin domain management
-
Added
/api/admin/subdomains/<id>/recordsendpoint
Static Resource Localization
-
ECharts chart library switched from CDN to local
-
Downloaded echarts.min.js to static/js/
-
Project policy updated: remote CDN links not allowed
Hosting Reseller Plan Management Fixes
-
Fixed failure when adding plans for hosting resellers
-
Plan form now supports multi-select associated domains
-
Added min/max character limit config for plans
-
Plan list now displays associated domain tags
-
Optimized form validation: check required fields before submission
Managed Domain Tag Distinction
-
Distinguish between platform and reseller domains on user domain purchase page
-
Reseller domains show purple “Managed” tag
-
Homepage domain search results also show managed tag
-
Full domain query results show managed tag
Hosting Channel Deletion Fixes
-
Fixed issue where resellers couldn’t delete channels after adding domains
-
When deleting a channel, only check the reseller’s domains; does not affect others
Hosting Domain Deletion Optimization
-
When domain is deleted, all subdomains and plan associations are deleted
-
If plan is only associated with that domain, delete entire plan
-
If plan is associated with multiple domains, just remove that domain association
-
When deletion is done, show numbers of cleaned subdomains/plans
Hosting Channel Management Optimization
-
Hosting reseller channel management page refactored, now matches admin channel management features
-
Supports dynamic credential fields, shows items based on service provider type
-
Added channel credential validation: online test if config is correct
-
Sidebar for resellers adds “Channel Management” menu entry
Hosting Domain Management Optimization
-
Hosting domain management page refactored, now matches admin domain management
-
Supports auto-fetching domain list from channels, multi-select import
-
Can toggle domain “registrable” status
-
Added API for fetching channel domain list (/api/host/channels//zones)
User Sidebar Hosting Reseller Entry
-
“Apply to Be a Reseller” link added in user center sidebar
-
Shows different tags depending on user’s reseller status (under review/certified)
-
Link takes user to reseller console or application page
-
Separate sidebar for reseller console: Home, Channel Management, Domain Management, Plan Management, Transaction Records
-
Non-reseller users see simplified sidebar on application page
-
Fixed user API not returning reseller status
-
Admin backend sidebar adds “Hosting Management” menu: applications, reseller list, system settings
Domain Hosting Feature
-
New domain hosting system, users can apply to be resellers
-
Resellers can add their own DNS channels, domains, and plans
-
When other users buy reseller domains, profit is automatically shared to reseller
-
Platform can set commission rate, resellers get profit share after commission
-
Reseller panel: view earnings stats, manage channels/domains/plans, view transactions
-
Admin functions: approve reseller applications, manage resellers, set system params
-
Supports suspend/resume/revoke reseller privileges
APP Client Captcha Support
-
When requesting from APP client, use image captcha to bypass Cloudflare Turnstile
-
APP client must add
X-Client-Type: appheader in requests -
Supports all captcha scenarios: login, register, password recovery, change password/email
App Update Log
2026-01-02
Homepage Style Fixes
- Fixed missing
<style>inpages/index/index.vue - Added complete homepage styles: navbar, hero section, announcement bar, stats area, product cards, domain suffix, my assets, quick services, features area, footer, etc.
VPS Hosting User Module
- Added
api/vhost.jsVPS user API:- Plans:
getVHostPlansget plan list - Orders:
purchaseVHostpurchase a VPS - Instance mgmt:
getVHostInstances,getVHostInstance,renewVHost - Order records:
getVHostOrders - Domain binding:
getInstanceDomains,addInstanceDomain,deleteInstanceDomain - File mgmt:
getFiles,readFile,saveFile,createFile,createDir,deleteFile,renameFile,copyFile,moveFile,zipFile,unzipFile - PHP version:
getPhpVersions,setPhpVersion - Run path:
getRunPath,setRunPath - Rewrite:
getRewrite,setRewrite,getRewriteTemplate - SSL certificate:
getSslStatus,deploySsl,closeSsl,setForceHttps
- Plans:
- Added
pages/vhost/purchase.vueVPS purchase page:- List plans (disk, bandwidth, domain count, DB, etc.)
- Highlight selected plan
- Domain input
- Promo code support
- On success, redirect to detail page
- Added
pages/vhost/list.vueVPS list page:- List hosts (domain, status, expiry, plan)
- Filter by status (all, normal, expiring, expired)
- Pull-to-refresh
- Click to view detail
- Added
pages/vhost/detail.vueVPS detail page:- Info tab: FTP/DB connection, plan config (with copy button)
- Domain tab: list, add/delete domain, check limits
- File mgmt tab: file list, breadcrumb navigation, new file/folder, edit/delete/rename, copy/move, zip/unzip
- Settings tab: PHP switch, run path setting, rewrite rules (template selection), SSL deploy/disable/force HTTPS
- Renewal function
- Added VPS hosting entry to personal center (quick actions & menu)
- Added VPS routes to
pages.json
VPS Hosting Admin Module
- Added VPS admin APIs in
api/admin.js:- Server mgmt:
getVHostServers,addVHostServer,updateVHostServer,deleteVHostServer,testVHostServer - Plan mgmt:
getAdminVHostPlans,createVHostPlan,updateVHostPlan,deleteVHostPlan - Instance mgmt:
getAdminVHostInstances,updateVHostInstance,deleteVHostInstance,batchDeleteVHostInstances - Order mgmt:
getAdminVHostOrders,deleteVHostOrder,batchDeleteVHostOrders - Stats:
getVHostStats
- Server mgmt:
- Added
pages/admin/vhost.vueVPS admin page:- Stats tab: total revenue, monthly revenue, host count, server count, etc.
- Servers tab: CRUD for Baota Panel servers, test connections
- Plans tab: CRUD for VPS plans, including disk, traffic, domains, etc.
- Hosts tab: host instance list, filter, pause/resume, change expiry, delete, batch delete
- Orders tab: order list, filter, delete, batch delete
- Added VPS management entry to admin backend homepage
OAuth Third-Party Login Binding
- Added OAuth-related APIs to
api/auth.js:getGithubStatus()- Get GitHub OAuth statusgetGoogleStatus()- Get Google OAuth statusgetNodelocStatus()- Get NodeLoc OAuth statusgetOAuthBindable()- Get which OAuth providers can be boundgetOAuthAuthUrl(provider)- Get OAuth auth URLbindOAuth(provider)- Bind OAuth accountunbindOAuth(provider)- Unbind OAuth account
- Added third-party account binding section to security settings (
pages/settings/security.vue):- Supports GitHub, Google, NodeLoc
- Shows provider enabled/disabled and binding status
- Supports bind/unbind actions
- Handles OAuth callback params
- Added third-party login to login page (
pages/login/login.vue):- Shows enabled OAuth login buttons
- Supports GitHub, Google, NodeLoc quick login
- Handles OAuth login callback
Alibaba Cloud Mail Push Settings
- Added
testAliyunDM()API inapi/admin.jsto test Aliyun mail - Added Aliyun mail push settings block to system settings page (
pages/admin/settings.vue):- Toggle on/off
- Access Key & Access Secret config
- Region select (East China 1 - Hangzhou, North China 2 - Beijing, East China 2 - Shanghai, Singapore)
- Sender email config
- Test sending
- Toggle and form field linkage