Skip to content

Verkkopalvelimet

Hallitut verkkopalvelimet ajavat Nginxiä tai Apachea puolestasi — alusta provisioi VM:n, asentaa ja konfiguroi verkkopalvelimen (valinnaisesti PHP:n kanssa), sitoo verkkotunnuksesi, julkaisee sisältösi ja voi julkaista sivuston internetiin tarvittaessa.

Luo verkkopalvelin

Portaalissa siirry kohtaan Web Servers → Instances → Create ja valitse:

  • Moottori — Nginx tai Apache ja versio (käynnistettävät versiot ovat pudotusvalikossa; suositeltu on merkitty).
  • Koko — koko web.gp1.*-perheestä (microxlarge).
  • Tallennustila — dokumenttijuuren levykoko.
  • VPC + aliverkko.
  • PHP — ota PHP valinnaisesti käyttöön ja valitse versio (8.1 / 8.2 / 8.3).

Komentoriviltä

Elinkaarikomennot ovat moottorikohtaisia (fm webserver nginx … / fm webserver apache …).

bash
fm webserver nginx instance create \
  --name site-1 \
  --version 1.30 \
  --flavor web.gp1.small \
  --storage 20 \
  --vpc my-vpc \
  --subnet my-subnet \
  --php-enabled --php-version 8.3

# Apache on symmetrinen: fm webserver apache instance create …

Terraformilla

hcl
resource "frostmoln_nginx_instance" "site" {
  name        = "site-1"
  version     = "1.30"
  flavor_id   = "web.gp1.small"
  storage_gb  = 20
  vpc_id      = frostmoln_vpc.main.id
  subnet_id   = frostmoln_subnet.main.id
  php_enabled = true
  php_version = "8.3"
}

(frostmoln_apache_instance on Apachen vastine.)

PHP on lukittu instanssin eliniäksi

PHP:n käyttöönotto tai PHP-version vaihtaminen edellyttää instanssin uudelleenluontia — sitä ei voi kytkeä päälle käynnissä olevalle verkkopalvelimelle. Valitse tarvitsemasi versio jo luontivaiheessa.

Julkaise sisältöä

Julkaise sivustosi lataamalla dokumenttijuuresi .tar.gz-arkisto. Alusta purkaa sen uuteen julkaisuhakemistoon ja vaihtaa atomisesti aktiivisen symbolisen linkin siihen, joten vaihto on välitön ja edellinen julkaisu säilytetään palautusta varten.

Portaalissa avaa verkkopalvelimen tietosivu ja käytä Deploy-välilehteä arkiston lataamiseen; julkaisuhistoria näkyy siellä.

Komentoriviltä

bash
# Julkaise arkisto instanssiin
fm webserver nginx deploy <instance-id> ./site.tar.gz

# Listaa aiemmat julkaisut (uusin ensin)
fm webserver nginx deploys list <instance-id>

# Apache: fm webserver apache deploy … / fm webserver apache deploys list …

Terraformilla

hcl
resource "frostmoln_webserver_deployment" "site" {
  instance_id    = frostmoln_nginx_instance.site.id
  source_archive = "${path.module}/site.tar.gz"
}

Terraform seuraa arkiston sisältötiivistettä — rakenna site.tar.gz uudelleen, niin seuraava terraform apply julkaisee automaattisesti uuden version.

Moottorin asetukset

Pieni, kuratoitu joukko moottorin asetuksia voidaan säätää koskematta raakaan Nginx-/Apache-konfiguraatioon. Avaimet ovat samat molemmille moottoreille:

AvainMitä se ohjaa
indexFilesHakemistopyynnölle kokeiltavat indeksitiedostonimet (esim. index.html index.php)
spaFallbackTarjoa index.html täsmäämättömille reiteille (single-page-app-varareitti)
clientMaxBodySizePyynnön/latauksen enimmäiskoko (esim. 25m)
gzipOta vastausten gzip-pakkaus käyttöön
securityHeadersLähetä perusjoukko tietoturvavastausotsakkeita
error404PagePolku mukautetulle 404-sivulle
error500PagePolku mukautetulle 500-sivulle

Portaalissa käytä verkkopalvelimen tietosivun Config-välilehteä.

Komentoriviltä

bash
# Näytä nykyinen konfiguraatio
fm webserver nginx config get <instance-id>

# Aseta arvo
fm webserver nginx config set <instance-id> spaFallback=true
fm webserver nginx config set <instance-id> clientMaxBodySize=25m

Terraformilla

Aseta config-kartta instanssiresurssiin:

hcl
resource "frostmoln_nginx_instance" "site" {
  # … luontiargumentit kuten yllä …

  config = {
    indexFiles        = "index.html index.htm"
    spaFallback       = "true"
    clientMaxBodySize = "25m"
    gzip              = "true"
    securityHeaders   = "true"
  }
}

Verkkotunnukset

Sido yksi tai useampi verkkotunnus käynnissä olevaan verkkopalvelimeen. Sidonta on merkintä alustalla: palvelin vastaa mihin tahansa isäntänimeen, joka osoitetaan sen IP-osoitteeseen, joten DNS tekee verkkotunnuksesta toimivan — sidonta merkitsee, mitkä verkkotunnukset katsot omiksesi ja mikä on oletus.

bash
fm webserver nginx domain add <instance-id> --name example.com

HTTPS:ää ei vielä terminoida puolestasi

Alusta ei myönnä eikä uusi varmenteita sidotulle verkkotunnukselle. Sidonnan TLS-lippu — sekä portaalin TLS-kytkin ja vihreä Enabled-merkintä instanssissa — tallentavat vain aikomuksesi: varmennetta ei provisioida, mikään ei kuuntele porttia 443, ja sivusto tarjoillaan HTTP:llä. Terminoi TLS itse verkkopalvelimen edessä, jos tarvitset HTTPS:ää tänään.

(Tai frostmoln_webserver_domain-Terraform-resurssin avulla.) Osoita verkkotunnuksesi DNS palvelimen julkiseen IP-osoitteeseen (katso alla) ja merkitse yksi verkkotunnus oletukseksi.

Julkaise internetiin

Hallittu verkkopalvelin on oletuksena yksityinen — se saa yksityisen IP-osoitteen ja on tavoitettavissa vain saman VPC:n instansseista. Tarjotaksesi sen julkiseen internetiin altista se: alusta varaa julkisen IP:n, liittää sen palvelimeen, ja instanssi näyttää tämän jälkeen julkisen IP-osoitteen.

Portaalissa käytä instanssin Expose-toimintoa.

Komentoriviltä

bash
fm webserver nginx expose <instance-id>     # varaa + liitä julkinen IP
fm webserver nginx unexpose <instance-id>   # vapauta se (takaisin yksityiseksi)

Terraformilla

hcl
resource "frostmoln_nginx_instance" "site" {
  # … luontiargumentit kuten yllä …
  public = true
}

Altistaminen varaa laskutettavan julkisen IP:n

Altistaminen varaa julkisen IP:n, joka laskutetaan niin kauan kuin se on varattuna. Palvelimen altistuksen poistaminen — tai sen poistaminen — vapauttaa julkisen IP:n.

Elinkaari ja rajoitukset

  • Käynnistä, pysäytä, käynnistä uudelleen, muuta kokoa (kasvata tallennustilaa) ja poista instanssin tietosivulta tai komentoriviltä (fm webserver nginx instance start|stop|restart|resize|delete).
  • PHP on lukittu luonnin jälkeen — muuta se luomalla instanssi uudelleen.
  • Palautus — edellinen julkaisu säilytetään jokaisen julkaisun jälkeen.
  • Ei sisäänrakennettua kuormantasausta tai automaattista skaalausta verkkopalvelininstanssien välillä (laita kuormantasaaja eteen sitä varten).

Liittyvät