Deploy Hugo ke Netlify: Panduan Lengkap#
Netlify adalah platform hosting yang sangat populer untuk static sites seperti Hugo. Berikut panduan lengkap untuk deploy blog Hugo Anda.
Persiapan Repository#
1. Setup Git Repository#
1
2
3
4
5
| git init
git add .
git commit -m "Initial commit"
git remote add origin https://github.com/username/repo.git
git push -u origin main
|
2. Konfigurasi netlify.toml#
1
2
3
4
5
6
7
8
| [build]
publish = "public"
command = "git submodule update --init --recursive && hugo --gc --minify"
[build.environment]
HUGO_VERSION = "0.146.0"
HUGO_ENV = "production"
HUGO_ENABLEGITINFO = "true"
|
Setup di Netlify#
Langkah-langkah:#
- Login ke Netlify: Buka netlify.com
- New Site from Git: Pilih repository Anda
- Build Settings:
- Build command:
hugo --gc --minify - Publish directory:
public
- Deploy Site: Klik deploy
Konfigurasi Domain#
Custom Domain#
- Beli domain dari registrar
- Di Netlify: Site Settings β Domain Management
- Add custom domain
- Update DNS records di registrar
SSL Certificate#
Netlify otomatis menyediakan SSL certificate gratis via Let’s Encrypt.
Continuous Deployment#
Automatic Builds#
- Setiap push ke main branch akan trigger build otomatis
- Build status bisa dilihat di Netlify dashboard
- Notifikasi build failure via email
Branch Deploys#
1
2
3
4
5
| [context.branch-deploy]
command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL"
[context.deploy-preview]
command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL"
|
Build Optimizations#
- Enable asset optimization
- Compress images
- Minify CSS/JS
- Enable Brotli compression
Caching Strategy#
1
2
3
4
5
6
| [[headers]]
for = "/*"
[headers.values]
X-Frame-Options = "DENY"
X-XSS-Protection = "1; mode=block"
Cache-Control = "public, max-age=31536000"
|
Monitoring & Analytics#
Build Monitoring#
- Deploy notifications
- Build logs analysis
- Performance monitoring
Analytics Integration#
- Google Analytics
- Netlify Analytics
- Custom tracking
Troubleshooting#
Common Issues#
- Build Failures: Check Hugo version compatibility
- Submodule Issues: Ensure git submodules are initialized
- Asset Loading: Verify baseURL configuration
- 404 Errors: Check _redirects file
Debug Commands#
1
2
3
4
5
6
7
8
| # Local build test
hugo --gc --minify --buildDrafts=false
# Check submodules
git submodule status
# Verify config
hugo config
|
Best Practices#
- Optimize images before upload
- Use Hugo’s built-in minification
- Enable Netlify’s asset optimization
- Implement proper caching headers
π Security#
- Enable HTTPS redirect
- Set security headers
- Use environment variables for secrets
- Regular dependency updates
π SEO#
- Configure proper meta tags
- Generate sitemap.xml
- Setup robots.txt
- Implement structured data
Kesimpulan#
Deploy Hugo ke Netlify sangat straightforward dan memberikan banyak fitur enterprise-grade secara gratis. Dengan setup yang tepat, Anda bisa mendapatkan:
- β
Continuous deployment
- β
Global CDN
- β
SSL certificate gratis
- β
Form handling
- β
Serverless functions
Mengalami masalah saat deployment? Hubungi kami untuk bantuan teknis.