Salt la conținutul principal

Punerea online a unui site sau a unei aplicații

Serverul dumneavoastră VPS Pro servește site-urile și aplicațiile pe numele lor de domeniu, prin HTTP și HTTPS. Vizitatorii ajung pe porturile 80 și 443 ale serverului, sub numele serverului; criptarea HTTPS merge cap-coadă, până la serverul dumneavoastră, unde se află certificatul.

1. Direcționați domeniul către server​

Acolo unde se administrează zona DNS a domeniului dumneavoastră, creați două înregistrări pentru numele serverului, cu adresele afișate în caseta sa, secțiunea VPS a zonei de client:

TipNumeValoare
Aapp (sau @ pentru domeniul însuși)valoarea Adresă IPv4 din casetă
AAAAapp (sau @)valoarea Adresă IPv6 din casetă

Un nume sub vps.simafri.cloud funcționează deja: nu este nimic de creat.

Când zona DNS a domeniului este administrată de Simafri, echipa noastră creează aceste înregistrări pentru dumneavoastră: scrieți-ne. Înainte de a muta un site deja online, cereți-ne și să reducem durata de viață (TTL) a înregistrării: comutarea se propagă atunci în câteva minute.

Pentru verificare de pe calculatorul dumneavoastră:

dig +short A app.firma-mea.ro
dig +short AAAA app.firma-mea.ro

2. Instalați serverul web​

Serverul web ascultă pe portul 80 pentru HTTP și pe portul 443 pentru HTTPS. Două variante obișnuite:

  • Caddy, care obține și reînnoiește singur certificatul HTTPS;
  • Nginx sau Apache, cu Certbot pentru certificat.

Cu Caddy​

apt install caddy

Apoi, în /etc/caddy/Caddyfile, pentru un site static:

app.firma-mea.ro {
root * /var/www/app
file_server
}

sau pentru o aplicație care ascultă pe portul 3000:

app.firma-mea.ro {
reverse_proxy 127.0.0.1:3000
}

systemctl reload caddy, iar site-ul răspunde prin HTTPS: Caddy a obținut certificatul și îl va reînnoi singur.

Cu Nginx și Certbot​

apt install nginx certbot python3-certbot-nginx

Creați site-ul în /etc/nginx/sites-available/app:

server {
listen 80;
listen [::]:80;
server_name app.firma-mea.ro;

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

Activați-l, apoi cereți certificatul:

ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d app.firma-mea.ro

Certbot instalează certificatul Let's Encrypt, adaugă ascultarea pe portul 443 și programează reînnoirea sa automată. certbot renew --dry-run verifică dacă reînnoirea este pregătită.

3. Mențineți aplicația în funcțiune​

O aplicație Node.js, Python, Go sau Java care rulează continuu se încredințează lui systemd: pornește odată cu serverul și repornește singură dacă se oprește. Exemplu, în /etc/systemd/system/app.service:

[Unit]
Description=Aplicația mea
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 # urmăriți jurnalele aplicației

PM2 pentru Node.js, Gunicorn sau Uvicorn pentru Python sau Docker Compose îndeplinesc același rol, dacă le preferați.

4. Baza de date​

PostgreSQL, MySQL, MariaDB, Redis sau MongoDB se instalează pe server cu managerul de pachete sau din depozitul oficial al editorului, pentru cea mai recentă versiune:

apt install postgresql

Păstrați baza de date în ascultare pe localhost: aplicația o accesează pe serverul însuși. Pentru a o administra de pe calculatorul dumneavoastră, treceți printr-un tunel SSH:

ssh -p 22101 -L 5432:localhost:5432 root@app.firma-mea.ro

Instrumentul dumneavoastră (DBeaver, pgAdmin, TablePlus) se conectează apoi la localhost:5432.

Servirea mai multor domenii​

Serverul răspunde sub numele său, stabilit la comandă. Pentru a servi un alt domeniu sau un alt subdomeniu pe același VPS Pro, scrieți echipei de asistență indicând numele de adăugat: echipa noastră le conectează la serverul dumneavoastră, apoi creați înregistrările lor DNS ca la etapa 1 și adăugați blocul lor în serverul web.

Întrebări frecvente​

Site-ul meu afișează o eroare de certificat.​

Verificați în ordine: înregistrările A și AAAA indică adresele din casetă (dig), serverul web ascultă pe porturile 80 și 443 (ss -tlnp), iar certificatul acoperă acest nume (certbot certificates). Certificatul se obține odată ce numele desemnează serverul dumneavoastră: rulați din nou Certbot sau reîncărcați Caddy după propagarea DNS.

Site-ul meu nu răspunde deloc.​

Pe server, curl -I http://localhost arată dacă serverul web răspunde. systemctl status nginx (sau caddy, ori serviciul dumneavoastră) și jurnalele sale spun de ce s-a oprit. Descrieți echipei de asistență ce observați: Asistența integrală pune diagnosticul împreună cu dumneavoastră.

Pot instala WordPress, Laravel sau Symfony?​

Da: instalați PHP-FPM, baza de date și serverul web, apoi aplicația, ca pe orice server Linux. Asistența integrală vă indică setările potrivite proiectului dumneavoastră, pas cu pas.