HTTP/HTTPS Server Module Documentation
Table of Contents
- Module Overview (Technical)
- Module Overview (Commercial/Business)
- Module Overview (End User/Administrator)
- Configuration Sections
- Settings Reference
- Common Scenarios & Examples
- Limitations & Important Notes
- Troubleshooting Tips
- Glossary
---
1. Module Overview (Technical)
What Is the HTTP/HTTPS Server Module?
HTTP/HTTPS Server is a web server configuration module that manages Nginx settings for the admin panel and API. It controls listeners, TLS policies, HSTS, logging, and rate limiting.
Architecture
Key Tables
| Table | Purpose |
|---|---|
public.http_server_config | Server configuration |
Key Files
| File | Description | |
|---|---|---|
modules/httpServer/ | Frontend module | |
/etc/nginx/nginx.conf | Nginx main config | |
/etc/nginx/conf.d/ | Site configurations |
2. Module Overview (Commercial/Business)
Business Value
HTTP/HTTPS Server provides secure web access:
| Without Configuration | With Configuration | |
|---|---|---|
| Default settings | Optimized security | |
| Basic TLS | Modern ciphers | |
| No HSTS | Browser enforcement | |
| No rate limits | Attack protection |
Use Cases
- Security Hardening
- Modern TLS settings
- Compliance
- TLS 1.2+ enforcement
- Performance
- Rate limiting
- Flexibility
- Multi-interface binding
Feature Highlights
| Feature | Benefit | |
|---|---|---|
| Force HTTPS | Secure all traffic | |
| TLS Version Control | Modern security | |
| Cipher Profiles | Easy configuration | |
| HSTS | Browser enforcement | |
| Rate Limiting | Attack protection | |
| Access Logs | Request tracking |
3. Module Overview (End User/Administrator)
What Can You Do?
- Configure HTTP/HTTPS ports
- Enable/disable protocols
- Force HTTPS redirect
- Set TLS version limits
- Choose cipher profile
- Configure HSTS
- Set default certificate
- Enable rate limiting
- Configure logging
HTTP/HTTPS Server Interface
Quick Tips
TIP
Force HTTPS: Always enable for production.TIP
Modern Ciphers: Best security for current browsers.WARNING
HSTS Preload: Irreversible - test thoroughly first.---
4. Configuration Sections
Listeners
| Field | Description | |
|---|---|---|
| Enable HTTP | Allow HTTP connections | |
| Enable HTTPS | Allow HTTPS connections | |
| HTTP Port | HTTP port (default 80) | |
| HTTPS Port | HTTPS port (default 443) | |
| Bind Address | Interface to bind |
HTTPS Policy
| Field | Description | |
|---|---|---|
| Force HTTPS | Redirect HTTP to HTTPS | |
| TLS Min Version | Minimum TLS (1.2 recommended) | |
| TLS Max Version | Maximum TLS (1.3) | |
| Cipher Profile | Cipher suite selection | |
| HSTS Enabled | Strict Transport Security | |
| HSTS Max Age | HSTS duration (seconds) | |
| Include Subdomains | Apply to subdomains | |
| HSTS Preload | Browser preload list | |
| Disable TLS Renegotiation | Prevent attacks |
Default Certificate
| Field | Description |
|---|---|
| Default TLS Certificate | Fallback certificate |
Logging & Security
| Field | Description | |
|---|---|---|
| Access Log | Log all requests | |
| Error Log Level | Minimum log severity | |
| Max Request Size | Body size limit | |
| Rate Limiting | Enable rate limits | |
| Max Requests | Requests per window | |
| Time Window | Rate limit window |
5. Settings Reference
TLS Versions
| Version | Status | Recommendation | |
|---|---|---|---|
| TLS 1.0 | Deprecated | ❌ Don't use | |
| TLS 1.1 | Deprecated | ❌ Don't use | |
| TLS 1.2 | Current | ✓ Minimum | |
| TLS 1.3 | Modern | ✓ Preferred |
Cipher Profiles
| Profile | Security | Compatibility | |
|---|---|---|---|
| Modern | Highest | Current browsers | |
| Intermediate | High | Older browsers | |
| Legacy | Medium | Very old clients |
HSTS Max Age Values
| Duration | Seconds | Use | |
|---|---|---|---|
| 1 day | 86400 | Testing | |
| 1 week | 604800 | Initial | |
| 1 month | 2592000 | Transitional | |
| 1 year | 31536000 | Production | |
| 2 years | 63072000 | Long-term |
Error Log Levels
| Level | Description | |
|---|---|---|
| debug | Very verbose | |
| info | Informational | |
| warn | Warnings (recommended) | |
| error | Errors only | |
| crit | Critical only |
6. Common Scenarios & Examples
Scenario 1: Secure Production Setup
- Enable HTTP and HTTPS
- Force HTTPS = ✓
- TLS Min = 1.2, Max = 1.3
- Cipher = Modern
- HSTS Enabled, Max Age = 1 year
- Include Subdomains = ✓
- Select default certificate
- Save
Scenario 2: Development Setup
- Enable HTTP and HTTPS
- Force HTTPS = ☐
- TLS Min = 1.2
- Cipher = Intermediate
- HSTS = ☐ (disabled)
- Save
Scenario 3: Enable Rate Limiting
- Rate Limiting = ✓
- Max Requests = 100
- Time Window = 10 seconds
- Save
- (100 requests per 10 seconds per IP)
Scenario 4: Change Ports
- HTTP Port = 8080
- HTTPS Port = 8443
- Bind Address = 0.0.0.0
- Save
- Restart Nginx
---
7. Limitations & Important Notes
Technical Notes
NOTE
Port Changes: May require service restart.NOTE
Bind Address: 0.0.0.0 = all IPv4, :: = all IPv6.WARNING
HSTS Preload: Permanent inclusion - test first!Best Practices
- Always Force HTTPS: Security baseline
- TLS 1.2 Minimum: Industry standard
- Modern Ciphers: When possible
- Enable HSTS: After HTTPS stable
- Rate Limiting: Protect against abuse
Security Recommendations
| Setting | Production Value | |
|---|---|---|
| Force HTTPS | ✓ Enabled | |
| TLS Min | 1.2 | |
| Cipher Profile | Modern | |
| HSTS | ✓ Enabled, 1 year | |
| TLS Renegotiation | ✓ Disabled | |
| Rate Limiting | ✓ Enabled |
8. Troubleshooting Tips
Common Issues
| Symptom | Possible Cause | Solution | |
|---|---|---|---|
| Can't connect | Wrong port | Check ports | |
| SSL error | No certificate | Set default cert | |
| HSTS issue | Preload stuck | Wait or use different domain | |
| Rate limited | Too many requests | Adjust limits |
Test Configuration
Check Nginx Status
---
9. Glossary
| Term | Definition | |
|---|---|---|
| TLS | Transport Layer Security | |
| HSTS | HTTP Strict Transport Security | |
| Cipher | Encryption algorithm | |
| Rate Limiting | Request throttling | |
| Preload | Browser built-in HSTS | |
| Bind Address | Interface IP |
Lua Script Status ℹ️
Infrastructure Module
| Component | Status |
|---|---|
| HTTP/HTTPS Server | ℹ️ Nginx configuration - no Lua handler required |
---
Documentation last updated: January 2026