NginxProxyManager / NginxProxyManager/nginx-proxy-manager
Automatic Punycode Conversion for Hostnames
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 34.2k
- Forks
- 3.9k
- Avg merge
- 21h 12m
- Merged PRs (30d)
- 20
Description
Is your feature request related to a problem? Please describe.
Currently, Nginx Proxy Manager (NPM) requires users to manually convert Internationalized Domain Names (IDNs) to Punycode when entering hostnames for proxy hosts, redirection hosts, and other configurations. This can be a source of confusion and errors for users who are not familiar with Punycode or the conversion process. It also adds an extra step to the configuration workflow.
For example, if a user wants to configure a proxy host for the domain bücher.example.com, they need to manually convert bücher to its Punycode equivalent, xn--bcher-kva, and enter the full Punycode hostname xn--bcher-kva.example.com.
Describe the solution you'd like
I would like to propose adding an option for automatic Punycode conversion within Nginx Proxy Manager. When a user enters a domain name that contains non-ASCII characters, NPM should automatically convert it to its Punycode representation behind the scenes. The user could still see the original IDN displayed in the interface for clarity, but the underlying configuration would use the Punycode version.
Describe alternatives you've considered
The current alternative is manual conversion, which is less user-friendly and prone to errors.
Additional context
Implementing automatic Punycode conversion would significantly improve the user experience for anyone working with IDNs. It would reduce the likelihood of configuration errors and make NPM more accessible to users worldwide. This feature could be a simple toggle in the settings or a default behavior with an option to disable it if needed. The interface could also provide a visual indicator or tooltip to show the user that a conversion has taken place.
Thank you for considering this feature request.
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
No files or tests are identified. Start by tracing hostname handling for proxy hosts, redirection hosts, and other configurations, along with the relevant settings and interface flows. Done means non-ASCII hostnames are converted to Punycode in generated configuration while the original IDN remains understandable in the interface, with the intended toggle or default behavior defined.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nginx, typescript
- Domain
- backend, frontend, internationalization
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100