Statični sajt: od fajla do domena
Kompletan put za landing stranicu ili React ili Vue build: otpremi fajlove na VPS, posluži ih web serverom, poveži domen i ažuriraj bez zastoja.
Ažurirano 23. avgust 2026.
Statični sajt je skup gotovih fajlova: HTML, CSS, slike, frontend build. Ne treba mu ni PHP ni baza podataka, pa se udobno pokreće čak i na VDS-1 i podnosi primetan saobraćaj: do 500 Mbit/s.
Gde smestiti fajlove
Napravi poseban direktorijum za svaki sajt:
mkdir -p /var/www/example.ru
chown -R www-data:www-data /var/www/example.ru
Otpremi sa svog lokalnog računara običnim scp ili rsync:
scp -r ./dist/* root@YOUR_ADDRESS:/var/www/example.ru/
rsync -avz --delete ./dist/ root@YOUR_ADDRESS:/var/www/example.ru/
rsync --delete briše fajlove na serveru kojih više nema u buildu. Bez toga se stari JS chunk-ovi gomilaju godinama.
Serviranje preko veb servera
Minimalna Nginx konfiguracija:
server {
listen 80;
server_name example.ru;
root /var/www/example.ru;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
location ~* \.(js|css|png|jpg|svg|woff2)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
Linija try_files ... /index.html je potrebna za single-page aplikacije napravljene na React-u, Vue-u i Svelte-u: bez nje, odlazak direktno na /about vraća 404.
Zatim sledi Let's Encrypt sertifikat, i sajt se otvara preko HTTPS-a.
Domena
U panelu za domene napravi A zapis koji pokazuje na javnu adresu mašine (kartica „Overview” u /hosting/vds/m/<id>) i isti zapis za www. Proveri:
dig +short example.ru
Zapisi mogu da se propagiraju i do nekoliko sati. Dok čekaš, sajt je dostupan na adresi mašine.
Ažuriranje bez zastoja
Ne otpremaj fajlove preko živog direktorijuma — posetilac može da zatekne napola izgrađen sajt. Izgradi uporedo i prebaci symlink:
rsync -avz ./dist/ /var/www/releases/$(date +%s)/
ln -sfn /var/www/releases/1724400000 /var/www/example.ru-current
systemctl reload nginx
root u konfiguraciji tada pokazuje na /var/www/example.ru-current.
Česte greške
| Simptom | Uzrok |
|---|---|
| Prazna stranica, 404 na JS u konzoli | Fajlovi su izgrađeni sa pogrešnim base — proveri podešavanja svog bundler-a |
| Stara verzija kod nekih posetilaca | Keš pregledača — koristi heširana imena fajlova |
| 403 na sve | Direktorijum nije čitljiv korisniku veb servera |
| Radi samo početna stranica | Nema try_files za single-page aplikaciju |
Bolje je da frontend izgradiš lokalno i otpremiš gotov
dist. Na VDS-1 sa 2 GB memorije, izgradnja velikog projekta može da padne zbog nedostatka memorije.