Skip to main content

Objava stranice ili aplikacije

Vaš VPS Pro poslužuje vaše stranice i aplikacije na njihovu nazivu domene, preko HTTP-a i HTTPS-a. Posjetitelji stižu na portove 80 i 443 vašeg poslužitelja, pod nazivom vašeg poslužitelja; HTTPS šifriranje ide s kraja na kraj, sve do vašeg poslužitelja, gdje se nalazi vaš certifikat.

1. Usmjeravanje domene na poslužitelj​

Ondje gdje se upravlja DNS zonom vaše domene izradite dva zapisa za naziv svojeg poslužitelja, s adresama prikazanima na njegovoj kartici, u odjeljku VPS vašeg korisničkog područja:

VrstaNazivVrijednost
Aapp (ili @ za samu domenu)IPv4 adresa s vaše kartice
AAAAapp (ili @)IPv6 adresa s vaše kartice

Naziv pod vps.simafri.cloud već radi: ne treba ništa izrađivati.

Kad DNS zonom vaše domene upravlja Simafri, naš tim postavlja te zapise umjesto vas: pišite nam. Prije prebacivanja stranice koja je već objavljena, zamolite nas i da smanjimo vrijeme trajanja (TTL) zapisa: prebacivanje se tada proširi za nekoliko minuta.

Za provjeru sa svojeg računala:

dig +short A app.moja-tvrtka.hr
dig +short AAAA app.moja-tvrtka.hr

2. Instalacija web poslužitelja​

Vaš web poslužitelj sluša na portu 80 za HTTP i na portu 443 za HTTPS. Dva uobičajena izbora:

  • Caddy, koji sam dobiva i obnavlja vaš HTTPS certifikat;
  • Nginx ili Apache, s Certbotom za certifikat.

S Caddyjem​

apt install caddy

Zatim, u /etc/caddy/Caddyfile, za statičnu stranicu:

app.moja-tvrtka.hr {
root * /var/www/app
file_server
}

ili za aplikaciju koja sluša na portu 3000:

app.moja-tvrtka.hr {
reverse_proxy 127.0.0.1:3000
}

systemctl reload caddy i vaša stranica odgovara preko HTTPS-a: Caddy je dobio certifikat i sam će ga obnavljati.

S Nginxom i Certbotom​

apt install nginx certbot python3-certbot-nginx

Izradite stranicu u /etc/nginx/sites-available/app:

server {
listen 80;
listen [::]:80;
server_name app.moja-tvrtka.hr;

location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Aktivirajte je, zatim zatražite certifikat:

ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d app.moja-tvrtka.hr

Certbot postavlja certifikat Let's Encrypt, dodaje slušanje na portu 443 i zakazuje njegovu automatsku obnovu. certbot renew --dry-run provjerava je li obnova spremna.

3. Održavanje aplikacije u radu​

Aplikacija u Node.js-u, Pythonu, Go-u ili Javi koja radi neprekidno povjerava se systemd-u: pokreće se s poslužiteljem i sama se ponovno pokreće ako se zaustavi. Primjer, u /etc/systemd/system/app.service:

[Unit]
Description=Moja aplikacija
After=network.target

[Service]
WorkingDirectory=/srv/app
ExecStart=/usr/bin/node server.js
Restart=always
Environment=NODE_ENV=production
User=www-data

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now app
journalctl -u app -f # praćenje njezinih zapisa

PM2 za Node.js, Gunicorn ili Uvicorn za Python ili Docker Compose imaju istu ulogu ako vam više odgovaraju.

4. Vaša baza podataka​

PostgreSQL, MySQL, MariaDB, Redis ili MongoDB instaliraju se na vaš poslužitelj upraviteljem paketa ili iz službenog repozitorija izdavača, za najnoviju verziju:

apt install postgresql

Neka vaša baza sluša na localhost: vaša joj aplikacija pristupa na samom poslužitelju. Za upravljanje njome sa svojeg računala koristite SSH tunel:

ssh -p 22101 -L 5432:localhost:5432 root@app.moja-tvrtka.hr

Vaš se alat (DBeaver, pgAdmin, TablePlus) tada povezuje na localhost:5432.

Posluživanje više domena​

Vaš poslužitelj odgovara pod svojim nazivom, određenim pri narudžbi. Za posluživanje druge domene ili druge poddomene na istom VPS Pro pišite podršci i navedite nazive koje treba dodati: naš ih tim spaja na vaš poslužitelj, a vi zatim izrađujete njihove DNS zapise kao u 1. koraku i dodajete njihov blok u svoj web poslužitelj.

Česta pitanja​

Moja stranica prikazuje pogrešku certifikata.​

Provjerite redom: vaši zapisi A i AAAA upućuju na adrese s vaše kartice (dig), vaš web poslužitelj sluša na portovima 80 i 443 (ss -tlnp), a certifikat doista pokriva taj naziv (certbot certificates). Certifikat se dobiva nakon što naziv upućuje na vaš poslužitelj: ponovno pokrenite Certbot ili ponovno učitajte Caddy nakon širenja DNS-a.

Moja stranica uopće ne odgovara.​

Na poslužitelju curl -I http://localhost pokazuje odgovara li vaš web poslužitelj. systemctl status nginx (ili caddy, ili vaša usluga) i njegovi zapisi govore zašto se zaustavio. Opišite podršci što primjećujete: Cjelovita podrška postavlja dijagnozu zajedno s vama.

Mogu li instalirati WordPress, Laravel ili Symfony?​

Da: instalirajte PHP-FPM, svoju bazu podataka i svoj web poslužitelj, zatim svoju aplikaciju, kao na svakom Linux poslužitelju. Cjelovita podrška pokazuje vam postavke prilagođene vašem projektu, korak po korak.