NginxProxyManager / NginxProxyManager/nginx-proxy-manager
Bug Report: Email validation inconsistency between registration and login
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 34.2k
- Forks
- 3.9k
- Avg merge
- 21h 12m
- Merged PRs (30d)
- 20
Description
Checklist
- Have you pulled and found the error with
jc21/nginx-proxy-manager:latestdocker image?- Yes
- Are you sure you're not using someone else's docker image?
- Yes
- Have you searched for similar issues (both open and closed)?
- Yes
Description:
Bug Report: Email validation inconsistency between registration and login
Summary
During initial setup, an admin account is created requiring an email address. The registration form accepts email addresses with long domain extensions (e.g. .photography, .solutions, .international). However, when attempting to log in with that same email address, the system returns an "invalid email address" error — effectively locking the admin out of the application.
Steps to Reproduce
- Install the application and start the initial setup
- Create an admin user with an email address using a long TLD (e.g. admin@example.photography)
- Complete the setup
- Attempt to log in with the same email address
❌ Error: "Email address is invalid"
Expected Behavior
Login should accept any email address that was accepted during registration. Validation rules must be consistent across all forms.
Actual Behavior
Login rejects email addresses with long TLDs, even though registration accepted them.
Impact
🔴 Critical — User is completely locked out after setup. There is no workaround without direct database access.
Possible Cause
Different regex patterns used for email validation in the registration vs. login flow. The login validator likely uses an outdated pattern that doesn't support modern long TLDs.
Nginx Proxy Manager Version
Nginx version: 2.14
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the email validation used during registration with the validation used during login. Reproduce the issue with an address such as admin@example.photography, then verify that both flows accept the same long-TLD address and that existing validation behavior remains intact.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authentication
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100