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ä (micro…xlarge). - 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 …).
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
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ä
# 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
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:
| Avain | Mitä se ohjaa |
|---|---|
indexFiles | Hakemistopyynnölle kokeiltavat indeksitiedostonimet (esim. index.html index.php) |
spaFallback | Tarjoa index.html täsmäämättömille reiteille (single-page-app-varareitti) |
clientMaxBodySize | Pyynnön/latauksen enimmäiskoko (esim. 25m) |
gzip | Ota vastausten gzip-pakkaus käyttöön |
securityHeaders | Lähetä perusjoukko tietoturvavastausotsakkeita |
error404Page | Polku mukautetulle 404-sivulle |
error500Page | Polku mukautetulle 500-sivulle |
Portaalissa käytä verkkopalvelimen tietosivun Config-välilehteä.
Komentoriviltä
# 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=25mTerraformilla
Aseta config-kartta instanssiresurssiin:
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.
fm webserver nginx domain add <instance-id> --name example.comHTTPS:ää 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ä
fm webserver nginx expose <instance-id> # varaa + liitä julkinen IP
fm webserver nginx unexpose <instance-id> # vapauta se (takaisin yksityiseksi)Terraformilla
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).