Website modern tidak hanya harus stabil dan aman, tetapi juga cepat untuk mendukung SEO dan user experience.
Nginx sebagai web server high-performance dapat dioptimalkan untuk meningkatkan PageSpeed, waktu loading, dan performa SEO.
Artikel ini membahas konfigurasi Nginx secara lengkap untuk optimasi SEO dan PageSpeed.
Contents
- 1 1. Mengapa Nginx Penting untuk SEO & PageSpeed?
- 2 2. Optimasi HTTP/2
- 3 3. Gzip Compression
- 4 4. Caching Static Content
- 5 5. Caching Dinamis / Microcaching
- 6 6. Redirect dan SEO-Friendly URLs
- 7 7. HTTP Caching Headers
- 8 8. Image Optimization & WebP
- 9 9. Keep-Alive & Connection Tuning
- 10 10. Brotli Compression (Opsional)
- 11 11. Monitoring & PageSpeed Tools
- 12 12. Best Practices Nginx untuk SEO & PageSpeed
- 13 13. Kesimpulan
- 14 Related Posts
1. Mengapa Nginx Penting untuk SEO & PageSpeed?
- Kecepatan website adalah faktor ranking Google
- Nginx mampu menangani ribuan request dengan konsumsi RAM rendah
- Mendukung caching, gzip, HTTP/2, SSL, yang meningkatkan PageSpeed
- Reverse proxy dapat mengurangi load backend → konten cepat diakses
2. Optimasi HTTP/2
HTTP/2 meningkatkan PageSpeed melalui multiplexing dan header compression.
server {
listen 443 ssl http2;
server_name example.com;
ssl_certificate /etc/nginx/certs/example.crt;
ssl_certificate_key /etc/nginx/certs/example.key;
root /var/www/html;
index index.html index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
}
- Pastikan
http2aktif dilisten 443 ssl http2; - HTTP/2 mengurangi latency, mempercepat load banyak resource
3. Gzip Compression
Gzip mengurangi ukuran konten teks (HTML, CSS, JS) → mempercepat loading:
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
- Level 6 → keseimbangan antara kompresi dan CPU usage
- Aktifkan
gzip_vary on→ caching di CDN atau browser lebih efektif
4. Caching Static Content
Konten statis (gambar, CSS, JS) dapat dicache lama → mengurangi load backend & meningkatkan PageSpeed:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public, no-transform";
}
expires 30d→ browser menyimpan resource 30 harino-transform→ mencegah proxy memodifikasi konten
4.1 Cache Busting
- Gunakan versi file di URL (misal
style.v1.css) untuk update asset tanpa mengganggu caching
5. Caching Dinamis / Microcaching
- Halaman dinamis yang sering diakses bisa di-cache sebentar (1–5 detik):
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mycache:10m max_size=1g inactive=60m use_temp_path=off;
server {
location / {
proxy_pass http://backend;
proxy_cache mycache;
proxy_cache_valid 200 5s;
proxy_cache_use_stale error timeout updating;
}
}
- Mengurangi request ke backend
- Homepage, kategori, atau API populer akan lebih cepat
6. Redirect dan SEO-Friendly URLs
6.1 Redirect www → non-www / HTTP → HTTPS
server {
listen 80;
server_name www.example.com;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com;
# SSL config
}
- Hindari duplikat konten → SEO lebih baik
- Gunakan 301 permanent redirect
6.2 Clean URLs
- Pastikan URLs ramah SEO (
example.com/product/123vsexample.com/?id=123) - Gunakan
try_filesuntuk PHP framework:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
7. HTTP Caching Headers
- Kontrol caching untuk browser & CDN:
add_header Cache-Control "public, max-age=31536000, immutable";
add_header Pragma "public";
- Gunakan untuk konten yang jarang berubah → mempercepat load page
8. Image Optimization & WebP
- Redirect format lama ke WebP jika browser mendukung:
location ~* \.(png|jpg)$ {
add_header Vary Accept;
try_files $uri$webp_suffix $uri =404;
}
- Mengurangi ukuran gambar → PageSpeed lebih tinggi
9. Keep-Alive & Connection Tuning
keepalive_timeout 65;
keepalive_requests 100;
worker_processes auto;
worker_connections 10240;
- Mempercepat reuse TCP → request lebih cepat
- Worker auto → sesuaikan jumlah core CPU
10. Brotli Compression (Opsional)
- Brotli lebih efektif daripada gzip untuk teks
- Memerlukan module tambahan (
ngx_brotli)
brotli on;
brotli_comp_level 6;
brotli_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
- Mengurangi size halaman → PageSpeed naik
11. Monitoring & PageSpeed Tools
- Gunakan tools untuk monitoring & testing optimasi:
| Tool | Kegunaan |
|---|---|
| Google PageSpeed Insights | Nilai performa & rekomendasi SEO |
| Lighthouse | Audit performa, aksesibilitas, SEO |
| GTMetrix | Analisis load time & bottleneck |
| Nginx access/error log | Pantau bottleneck & traffic |
12. Best Practices Nginx untuk SEO & PageSpeed
- Aktifkan HTTP/2 → multiplexing, header compression
- Gunakan Gzip / Brotli → kompresi teks
- Cache static assets lama → browser load lebih cepat
- Microcache untuk dynamic content → mengurangi load backend
- Redirect 301 & clean URLs → hindari duplicate content
- Optimize images → WebP, lazy load, responsive images
- Keep-alive & worker tuning → TCP reuse & concurrency
- Tambahkan security headers → SEO lebih baik
- Gunakan CDN → load global lebih cepat
13. Kesimpulan
Konfigurasi Nginx yang tepat dapat:
- Meningkatkan PageSpeed → waktu load lebih cepat
- Mendukung SEO → clean URLs, redirect 301, caching
- Mengurangi load backend → lebih hemat resource
- Membuat website scalable & resilient untuk high traffic
Dengan kombinasi HTTP/2, gzip, caching, redirect, dan optimization image, website production bisa mencapai PageSpeed tinggi dan ranking SEO optimal.
