nginx Config Generator
Generate nginx configuration files for different use cases. Configure SSL, compression, security headers, and caching.
server {
listen 80;
listen [::]:80;
server_name example.com;
# Security Headers
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# Gzip Compression
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_proxied any;
gzip_types text/plain text/css text/xml text/javascript application/javascript application/json application/xml;
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
# Static file caching
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2?)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
Usage Notes
- Save this configuration to /etc/nginx/sites-available/
- Create a symlink in sites-enabled: ln -s ../sites-available/yoursite
- Test configuration: nginx -t
- Reload nginx: systemctl reload nginx
nginx Configuration - Technical Details
nginx is a high-performance HTTP server and reverse proxy. Configuration files define how nginx handles requests, including serving static files, proxying to backend servers, SSL termination, and load balancing.
Command-line Alternative
# Test nginx configuration\nnginx -t\n\n# Reload nginx\nsudo systemctl reload nginx\n\n# Check nginx status\nsudo systemctl status nginx