Ga naar de hoofdinhoud

Een website of applicatie online zetten

Uw VPS Pro levert uw websites en applicaties op hun domeinnaam, via HTTP en HTTPS. Bezoekers komen binnen op de poorten 80 en 443 van uw server, onder de naam van uw server; de HTTPS-versleuteling loopt van begin tot eind, tot op uw server, waar uw certificaat staat.

1. Uw domein naar uw server laten wijzen​

Maak, daar waar de DNS-zone van uw domein wordt beheerd, twee records aan voor de naam van uw server, met de adressen uit de kaart van de server, rubriek VPS van uw klantenruimte:

TypeNaamWaarde
Aapp (of @ voor het domein zelf)het IPv4-adres uit uw kaart
AAAAapp (of @)het IPv6-adres uit uw kaart

Een naam onder vps.simafri.cloud werkt al: daarvoor hoeft u niets aan te maken.

Wordt de DNS-zone van uw domein door Simafri beheerd, dan zet ons team deze records voor u: schrijf ons. Vraag ons ook, voordat u een website die al online is overschakelt, de levensduur (TTL) van het record te verlagen: de overschakeling is dan in enkele minuten overal doorgevoerd.

Om het vanaf uw computer te controleren:

dig +short A app.mijn-bedrijf.nl
dig +short AAAA app.mijn-bedrijf.nl

2. Uw webserver installeren​

Uw webserver luistert op poort 80 voor HTTP en op poort 443 voor HTTPS. Twee gangbare keuzes:

  • Caddy, dat uw HTTPS-certificaat zelf aanvraagt en vernieuwt;
  • Nginx of Apache, met Certbot voor het certificaat.

Met Caddy​

apt install caddy

Daarna, in /etc/caddy/Caddyfile, voor een statische website:

app.mijn-bedrijf.nl {
root * /var/www/app
file_server
}

of voor een applicatie die op poort 3000 luistert:

app.mijn-bedrijf.nl {
reverse_proxy 127.0.0.1:3000
}

systemctl reload caddy, en uw website antwoordt via HTTPS: Caddy heeft het certificaat verkregen en vernieuwt het vanzelf.

Met Nginx en Certbot​

apt install nginx certbot python3-certbot-nginx

Maak de website aan in /etc/nginx/sites-available/app:

server {
listen 80;
listen [::]:80;
server_name app.mijn-bedrijf.nl;

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

Activeer de website en vraag daarna het certificaat aan:

ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d app.mijn-bedrijf.nl

Certbot zet het Let's Encrypt-certificaat, voegt het luisteren op poort 443 toe en plant de automatische vernieuwing ervan. certbot renew --dry-run controleert of de vernieuwing klaarstaat.

3. Uw applicatie draaiende houden​

Een Node.js-, Python-, Go- of Java-applicatie die continu draait, vertrouwt u toe aan systemd: ze start met de server en herstart vanzelf als ze stopt. Voorbeeld, in /etc/systemd/system/app.service:

[Unit]
Description=Mijn applicatie
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 # de logs volgen

PM2 voor Node.js, Gunicorn of Uvicorn voor Python, of Docker Compose vervullen dezelfde rol als u daaraan de voorkeur geeft.

4. Uw database​

PostgreSQL, MySQL, MariaDB, Redis of MongoDB installeert u op uw server met de pakketbeheerder, of vanuit de officiële repository van de uitgever voor de nieuwste versie:

apt install postgresql

Laat uw database luisteren op localhost: uw applicatie bereikt haar op de server zelf. Om haar vanaf uw computer te beheren, gebruikt u een SSH-tunnel:

ssh -p 22101 -L 5432:localhost:5432 root@app.mijn-bedrijf.nl

Uw tool (DBeaver, pgAdmin, TablePlus) maakt dan verbinding met localhost:5432.

Meerdere domeinen bedienen​

Uw server antwoordt onder zijn naam, die bij de bestelling is vastgelegd. Om een ander domein of subdomein op dezelfde VPS Pro te bedienen, schrijft u naar de ondersteuning met de namen die u wilt toevoegen: ons team koppelt ze aan uw server, waarna u hun DNS-records aanmaakt zoals in stap 1 en hun blok toevoegt aan uw webserver.

Veelgestelde vragen​

Mijn website toont een certificaatfout.​

Controleer in deze volgorde: uw records A en AAAA wijzen naar de adressen uit uw kaart (dig), uw webserver luistert op de poorten 80 en 443 (ss -tlnp), en het certificaat dekt deze naam (certbot certificates). Het certificaat wordt verkregen zodra de naam naar uw server wijst: start Certbot opnieuw, of herlaad Caddy, zodra de DNS-wijziging is doorgevoerd.

Mijn website antwoordt helemaal niet.​

Op de server toont curl -I http://localhost of uw webserver antwoordt. systemctl status nginx (of caddy, of uw dienst) en de logs ervan vertellen waarom hij is gestopt. Beschrijf wat u ziet aan de ondersteuning: Full-Stack Support stelt samen met u de diagnose.

Kan ik WordPress, Laravel of Symfony installeren?​

Ja: installeer PHP-FPM, uw database en uw webserver, en daarna uw applicatie, zoals op elke Linux-server. Full-Stack Support vertelt u stap voor stap welke instellingen bij uw project passen.