Notice
We're excited to announce that we've been hard at work developing the next generation of the Nginx UI (v2). To keep up-to-date with our progress, please visit https://github.com/users/0xJacky/projects/1.
Please feel free to send any feedback, suggestions, or bug reports on Github issues.
Thank you to all of the beta testers as we approach rc1.
Change vs v2.0.0-beta.39
- Fixed config not synced to remote nodes when added.
- Enhanced server and node analytics.
- Removed "uniqueIndex" constraint in site #673 .
- Enhanced Nginx Log viewer, do not seek the file if its size is 0 #674 .
- Fixed config sync issue #685.
- Added SSE notify.
- Limited the max length of the user's password to 20 chars #703.
- Fixed invalid sorters #712.
- Fixed failed to create config #720, #724.
- Supported
risc-v
andmips
architecture, thanks to @Hintay . - Auto save certificate before renewing #723.
- The node selector is now using SSE to update the status of nodes.
- Fixed the key type of auto-cert is not user specified.
- Fixed certificate will be duplicated if the user renews it manually.
- Fixed failed to issue cert after switching mode from advanced to basic #704 .
- Fixed collapse header of LocationEditor overflow.
Breaking Changes:
- Starting from v2.0.0-beta.37, we introduced a new version of the structure of the settings file(v2). When you upgrade to the latest version, it will automatically perform the migration process. Please make sure that the Nginx UI in your server has permission to modify the config file itself. Please check the documentation for more details: https://nginxui.com/.
- Starting from v2.0.0-beta.36, you must specify the directories where the logs are stored. Only logs within these directories can be viewed online. Check this documentation for more information: https://nginxui.com/guide/config-nginx.html#logdirwhitelist.
- The
CasdoorSettings.Certificate
setting has been deprecated and replaced byCasdoorSettings.CertificatePath
, which refers to the path of the certificate file. - About PR #445, if you are using nginx-ui docker container and encounter this issue, you have to remove the trailing
.conf
manually. Diff: https://github.com/0xJacky/nginx-ui/pull/445/files - The
nginx_log
section in the configuration file has been renamed tonginx
.
NginxConfigDir
andNginxPIDPath
in theserver
section have been renamed toConfigDir
andPIDPath
respectively, and both have been moved into thenginx
section. - The
ReloadCmd
andRestartCmd
have been added in thenginx
section to configure custom commands for reloading/restarting Nginx. - In versions above v2.0.0-beta.23 of Nginx UI Docker containers,
/var/logs/nginx/access.log
and/var/logs/nginx/error.log
are no longer soft links to/dev/stdout
and/dev/stderr
, but regular files. If you need this functionality, please addaccess_log /dev/stdout
anderror_log /dev/stderr
in yournginx.conf
. For users upgrading from older versions who do not need this feature, check if yournginx.conf
containsaccess_log /var/logs/nginx/access.local.log
anderror_log /var/logs/nginx/error.local.log
. If so, please manually remove them to avoid duplicate log entries. This change allows you to map/var/logs/nginx
to a directory on the host machine to achieve persistent storage of log files.
What's new:
What's new
- We're proud to have registered the nginxui.com domain 🎉.
- We have launched a new documentation site, please check nginxui.com.
- Node management functionality has been introduced (#70).
- Duplicate site function now can duplicate config to a remote server.
- French translations have been added, thanks to the contributions of @skrilax91.
- Added border-radius to Ace Editor and terminal, we hope you will like this change :).
- You can now deploy site configuration to a remote server.
- Spanish translations have been added, thanks to the contributions of @kcholoren.
- Russian translations have been added, thanks to the contributions of @iAHTOH.
- The dashboard now includes a system monitor for nodes.
- Use jsoniter for improving gin performance.
- Added custom reload/restart command for nginx. #140
- Refacted translation module #135
- Added HTTP host config #157 by @quanbisen
- Add setting for test nginx config command #191
- Added casdoor sso support, thanks to the contributions of @Jraaay
- Refactor the project directory structure.
- Use tailwind css.
- Use eslint to check the code style of frontend.
- Use vue-tsc to check the types for frontend.
- Introducing a new management page for certificates, users can now view the latest renewal logs of certain certificates.
- Add a manually renew button in the certificate modify page for the managed certificate (auto cert).
- Add notifications for renewing certificates. #192
- Automatically detect the path of access logs and error logs.
- Introducing the feature of issuing wildcard certificates on the Manage Certificate page. #190
- Add some Nginx Config Templates #233, thanks to the contributions of @sanvu88 .
- Support different key types for obtaining certificates, including RSA2048, RAS3072, RSA4096, EC256 and EC384 #264.
- Introducing logroate cron task for docker users #255.
- A system default acme user will be registered when nginx ui starts. #237
- Add Acme user management page. #319
- Persist the Acme user to the database.
- Add a setting of renewal interval of certificates (7-21d). #343
- Add an option to select an Acme user when obtaining a certificate. #319 #16
- SSL management supports different types of certificates of the same domain name. #309, #288
- Certificates obtained within 21 days are renewed by using the renewal API. For compatibility, the challenge resolver is still set up when renewing. #319
- Add trash for soft deleted items in CURD pages.
- Use s6-overlay to manage the services in docker #308 .
- Users can use settings or environment variables to skip installation #357 .
- Users can use environment variables to predefine an admin user (only available in skip installation mode) #214 .
- Users can customize the name of local environment #313 .
- Users can use the settings file to predefine nodes #169 .
- Hot reload cluster node settings from settings file #169.
- Introducing synchronize certificates to remote server #293, #363, #411.
- Enabled search box for Ace code editor #412.
- Add a white list of IPs, only those in the list can access the Nginx UI.
- Add login failed ban IP list.
- Add 2FA authorization for login #344, #419.
- Add 2FA authorization for Web Terminal #394 .
- Hide some parts of Jwt Secret and Node Secret on the settings page.
- The selector of the changed certificate now supports selecting multiple certificates #437 .
- Certificate(s) Info now supports display info of multiple certificates.
- The info on changed certificates in the server tab will be shown. #386
- Better breadcrumbs #258.
- Add OCSP Must Staple options in AutoCert #292.
- Add LEGO_DISABLE_CNAME_SUPPORT options in AutoCert #407.
- Added the capability to create new configuration files online.
- Introduced a feature to rename configuration files.
- Better breadcrumbs for configurations list and editor.
- Add filename filter for configurations list.
- Added the capability to create a new folder in the configurations list.
- Added the capability to rename folders or files in the configurations list.
- Implemented deployment of configuration files to remote nodes.
- Update translations of Korean, thanks for @jkh0kr .
- Added Portuguese translations—special thanks to @mksarifo.
- Support Webauthn passkey as a login and 2FA method.
- Added site category. #657
- Added status filter for site list. #633
- Added selection box for Nginx Config Template.
- Added scheme and host fields for the reverse proxy template. #608
Fixes:
- We've upgraded gonginx to address the configuration parsing issue #73.
- Fixed an issue where it was not possible to update the settings value to an empty string.
- Resolved a location-saving issue on the domain addition page #116.
- Site enabling/disabling is now aborted only when the log level is higher than warning.
- Fixed environment indicator display overlay and data obtaining issues #152 by @quanbisen
- Fixed env indicator background in dark mode.
- Terminal process not killed #181
- Added
gpt-4-1106-preview
model in ChatGPT settings. - Fixed change language cause unexpected redirect #189
- Fixed English grammar error in button text on site management page. #200
- Fixed logs mnual link error. #201
- Revert enable site if you trying to enable an incorrect config of the site. #199
- Upgrade ant design vue version from v3 to v4, thanks @funcfang
- Fixed FooterToolBar content was covered by Monica, a Chrome Extension. #195
- Delete server confirm modal not destroy #206
- clientMaxBodySize name is wrong. #216
- Fix errors may occur when enabling TLS. #230
- Introducing stream management pages. #166
- Introducing upstream editor. #138
- Introducing upstream health check (supports TCP and Unix Socket).
- Fix a bug that may cause nginx-ui to take 100% CPU if the log file is not a regular file.
- Fix a bug of the loading indicator constantly spinning in the table of configurations management page, if the directory has no file.
Enhances:
- The recovery function now can print call stack information.
- Added file info to config editor.
- Improved zh_TW locale. #148
- Enhance the error handler for execShell.
- Enhance nginx control and status acquisition. #222
- Remove the validated rules for DNS Credentials
Docs:
- Traditional Chinese documentation has been added, thanks to @Hintay.
- We've added documentation for the syntax of the configuration template.
- We have updated the documentation for the Nginx proxy example.
- Updated deprecated TLS directives #183
Others:
- Core upgrades will be performed as a dry run in demo mode.
- Updated zh_CN translations.
- Changed Token to NodeSecret #152
- Updated configurations of DNS challenges provider.