Käyttöönotto Ja Verkossa
i18n.site
käyttää yksisivuista sovellusarkkitehtuuria , ja verkkosivuston sisääntulosivu ja verkkosivuston sisältö otetaan käyttöön itsenäisesti.
Kun yllä oleva käännös on suoritettu, hakemistot htm
ja v
luodaan md/out/dev
hakemiston alle.
Tässä dev
tarkoittaa, että se on rakennettu .i18n/htm/dev.yml
määritystiedoston perusteella.
dev
hakemistosta :
htm
-hakemisto on verkkosivuston sisäänkäyntisivu.
v
-hakemisto sisältää verkkosivuston sisällön versionumeroineen.
Paikallinen esikatselu ei välitä versionumerosta ja kopioi kaikki tiedostot out/dev/v/0.1.0
hakemistoon.
Virallista julkaisua varten muutetut tiedostot kopioidaan uuteen versionumerohakemistoon.
Määritä Asetustiedosto Arvolla -c
Eri asetustiedostot luovat vastaavat hakemistot out
hakemistoon.
Esimerkiksi .i18n/htm/main.yml
luo hakemiston out/main
.
dev.yml
ja main.yml
ovat oletuskokoonpanot.
dev
on lyhenne luvusta development
, joka ilmaisee kehitysympäristön ja jota käytetään paikalliseen esikatseluun, ja se on myös oletusasetustiedosto.
ol
on lyhenne luvusta online
, joka ilmaisee verkkoympäristön, jota käytetään virallisessa julkaisussa. Se on myös oletusasetustiedosto npm
-n
Voit myös luoda muita asetustiedostoja. Käytä komentorivillä --htm_conf
määrittääksesi käytettävän kokoonpanotiedoston:
esimerkiksi:
i18n.site --htm_conf dist --save
Tässä --save
edustaa päivityksen versionumeroa.
Julkaise sisältöä osoitteessa npmjs.com
Suositeltu oletusratkaisu on sisällön julkaiseminen npmjs.com
Kirjaudu npm & Viesti
Asenna nodejs
, kirjaudu sisään tunnuksella npm login
.
Muokkaa md/.i18n/htm/main.yml
ja muuta arvoksi md:
omaksi npm
YOUR_NPM_PACKAGE
nimeksi npmjs.com
Muokkaa sitten md/.i18n/htm/main.package.json
Suorita i18n.site --npm
tai i18n.site -n
hakemistossa md
kääntääksesi ja julkaistaksesi.
Jos käytät julkaisuun jatkuvaa integrointiympäristöä, nodejs
ei tarvitse asentaa. Kopioi vain sisäänkirjautumis- ja julkaisuoikeudet ~/.npmrc
ympäristöön.
Jos muutat paketin nimeä v:
in main.yml
, muista poistaa ensin .i18n/v/main
ja julkaista se sitten.
Välityspalvelin Julkaisi npm
Jos käyttäjät Manner-Kiinassa kohtaavat verkkoongelmia eivätkä pysty julkaisemaan npm
pakettia, he voivat määrittää välityspalvelimen ympäristömuuttujan https_proxy
.
Olettaen, että välityspalvelimesi portti on 7890
, voit kirjoittaa:
https_proxy=http://127.0.0.1:7890 i18n.site -n
Itse Isännöity Sisältö
Jos haluat isännöidä sisältöä itse, muokkaa ensin arvoa md/.i18n/htm/main.yml
ja vaihda v: //unpkg.com/i18n.site
URL-etuliitteeksi, kuten v: //i18n-v.xxx.com
.
Syötä md
-hakemisto ja suorita
i18n.site --htm_conf ol --save
tai lyhenne
i18n.site -c ol -s
Määritä sitten md/out/main/v
-hakemiston sisältö kohdassa v:
asetettuun URL-etuliitepolkuun.
Lopuksi määritä välimuistin aika polulle, joka päättyy 1s
/.v
, muuten äskettäin julkaistua sisältöä ei voida käyttää heti.
Muiden polkujen välimuistiaika voidaan asettaa yhdeksi vuodeksi tai pidemmäksi tarpeettomien pyyntöjen vähentämiseksi.
Isännöi Sisältöä S3:lle
Sisällön itseisännöintiin oman palvelimen käytön lisäksi toinen yleinen vaihtoehto on käyttää CDN
S3
+
S3
kirjautua sisään S3
-palvelimeen käyttämällä rclone
i18n.site -c ol -s
s3=your-s3
bucket=your-bucket
ver=$(head -1 .i18n/v/main/v.hash | cut -c 2-)
rclone copy --overwrite-dir out/main/htm/v/$ver $s3:/$bucket/$ver
rclone copy out/main/v/.v "$s3:/$bucket/"
Muista määrittää CDN
siten, että numeroon /.v
päättyvän polun välimuistiaika on 1s
, muuten äskettäin julkaistuun sisältöön ei pääse heti käsiksi.
Julkaista Verkkosivustoa
Sivusto voidaan ottaa käyttöön missä tahansa github page ja cloudflare page ovat hyviä valintoja.
Koska verkkosivusto käyttää yksisivuista sovellusarkkitehtuuria , muista kirjoittaa uudelleen URL-polut, jotka eivät sisällä .
- index.html
.
Verkkosivuston aloitussivu tarvitsee ottaa käyttöön vain kerran, eikä verkkosivuston aloitussivua tarvitse ottaa uudelleen käyttöön myöhempiä sisältöpäivityksiä varten.
Ota Käyttöön Github-Sivulla
Napsauta ensin github luodaksesi organisaation . Seuraava organisaation nimi on i18n-demo
.
Luo sitten varasto i18n-demo.github.io
tälle organisaatiolle (korvaa i18n-demo
luomallasi organisaation nimellä):
Kun julkaiset edellisen artikkelin sisältöä, out/main/htm
on luotu. Syötä tämä hakemisto ja suorita :
ln -s index.html 404.html
Koska github page
ei tue URL-polun uudelleenkirjoittamista, sen sijaan käytetään 404.html
.
Suorita sitten seuraava komento hakemistossa htm
(muista korvata i18n-demo/i18n-demo.github.io.git
omalla varastoosoitteellasi) :
git init
git branch -M main
git remote add origin [email protected]:i18n-demo/i18n-demo.github.io.git
git push -u origin main -f
Kun olet painanut koodia, odota, että github page
:n käyttöönotto onnistuu (kuten alla on kuvattu), ennen kuin voit käyttää sitä.
Katso esittelysivu:
https://i18n-demo.github.io
Ota Käyttöön Cloudflare-Sivulla
cloudflare page github page
aan, se tarjoaa polun uudelleenkirjoituksen ja on ystävällisempi Manner-Kiinalle ja on suositeltavaa käyttää.
cloudflare page
:n käyttöönotto perustuu yleensä yllä olevan github page
:n käyttöön.
Luo projekti ja sido yllä oleva i18n-demo.github.io
varasto.
Prosessi on esitetty alla olevassa kuvassa:
Napsauta Add Account
myöntääksesi käyttöoikeudet organisaatiolle i18n-demo
.
Jos olet sitonut toisen organisaation varaston, sinun on ehkä napsautettava Add Account
kahdesti valtuuttaaksesi kaksi kertaa, ennen kuin uusi organisaatio tulee näkyviin.
Valitse seuraavaksi varasto i18n-demo.github.io
, napsauta sitten Begin setup
ja käytä oletusarvoja seuraavissa vaiheissa.
Kun olet sidonut ensimmäisen kerran, sinun on odotettava muutama minuutti, ennen kuin voit käyttää sitä.
Käyttöönoton jälkeen voit sitoa mukautetun toimialueen nimen.
Kun olet sitonut mukautetun verkkotunnuksen nimen, siirry verkkotunnuksen nimeen ja määritä yksisivuisen sovelluksen polun uudelleenkirjoitus alla olevan kuvan mukaisesti:
Yllä olevan kuvan säännöt ovat seuraavat. Korvaa ensimmäisellä rivillä i18n.site
sitomallasi verkkotunnuksella.
(http.host in {"i18n.site"}) and not (
substring(http.request.uri.path,-3) in {".js" ".gz"} or
substring(http.request.uri.path,-4) in {".htm" ".rss" ".css" ".svg" ".ico" ".png" ".xml" ".txt"} or
substring(http.request.uri.path,-5) in {".html" ".avif" ".json"} or
ends_with(http.request.uri.path,".webmanifest")
)
Lisäksi määritä välimuistisäännöt alla olevan kuvan mukaisesti ja aseta välimuistin kestoksi yksi kuukausi.
Vaihda yllä olevan kuvan toisessa vaiheessa vastaava verkkotunnus sitomaasi verkkotunnukseen.
Verkkosivustojen Käyttöönoton Optimointi Manner-Kiinassa
Jos haluat parantaa saavutettavuutta Manner-Kiinan verkkoympäristössä, rekisteröi ensin verkkotunnus .
Käytä sitten Manner + Kiinan pilvitoimittajien objektivarastoa CDN
Ota käyttöön seuraava sisältö out/main/htm
.
Voit käyttää reunalaskentaa polun uudelleenkirjoittamiseen yhden sivun sovelluksiin mukautumiseksi. Esimerkiksi Baidu Smart Cloud CDN
voidaan määrittää seuraavasti:
const uri = r.uri, p = uri.lastIndexOf(".");
if (
p < 0 ||
!"|js|css|htm|html|md|avif|json|ico|xml|rss|gz|mp4|png|svg|txt|webmanifest|".includes(
"|" + uri.slice(p + 1) + "|",
)
) {
const ua = r.headersIn["User-Agent"].toLowerCase()
if (/facebookexternalhit|slurp|bot|spider|curl/.test(ua)) {
r.return(
302,
(/baidu|yisou|sogou|360|byte/.test(ua) ? "/zh" : "/en") + r.uri + ".htm",
)
} else {
r.uri = "/index.html"
}
}
r.respHeader(() => {
const t = [], out = r.headersOut;
["Content-MD5", "Age", "Expires", "Last-Modified"].forEach(
i => delete out[i]
)
r.rawHeadersOut.forEach(i => {
const key = i[0].toLowerCase()
if (key.startsWith("x-") || key.startsWith("ohc-")) {
delete out[key]
}
})
out["Cache-Control"] = "max-age=" + 9e5
// Vastausotsikot voidaan asettaa virheenkorjaustuloksi, kuten out.XXX = 'MSG';
})
Koska tietue MX
ja tietue CNAME
eivät voi olla rinnakkain, jos haluat vastaanottaa verkkotunnussähköposteja samanaikaisesti, sinun on tehtävä yhteistyötä cname_flatten kanssa tasolle CNAME
tietueeseen A
.
Lisäksi, koska pilvitoimittajien ulkomaiset liikennemaksut Manner-Kiinassa ovat suhteellisen kalliita, voit käyttää Huawei Cloudin ilmaista maantieteellistä DNS ja Cloudflare for SaaS :n mukautettua verkkotunnuksen nimeä (kuten alla)! liikenteen ohjaaminen──Liikenteen reititys Manner-Kiinassa Baidu Cloud CDN
, kansainvälinen liikenne menee cloudflare .
Nämä käyttöönoton optimointiratkaisut ovat monimutkaisempia, ja ne esitellään jatkossa erillisissä luvuissa.
Yleinen Verkkotunnuksen Uudelleenohjaus
Jos käytät i18n.site
verkkosivuston luomiseen pääsivustoksi, sinun on yleensä määritettävä koko verkkotunnuksen uudelleenohjaus eli uudelleenohjattava pääsy osoitteeseen *.xxx.com
(mukaan lukien www.xxx.com
) xxx.com
:een.
Tämä vaatimus voidaan saavuttaa Alibaba Cloud CDN
EdgeScript
:n avulla ( englanninkielinen dokumentti / kiinalainen asiakirja )
Lisää verkkotunnuksen nimi Alibaba CDN ja osoita verkkotunnus *.xxx.com
- CNAME
Alibaba Cloud CDN
ssä.
Esimerkiksi yleisverkkotunnuksen uudelleenohjauskonfiguraatio *.i18n.site
yllä olevassa kuvassa on seuraava:
rewrite(concat('https://i18n.site',$uri), 'redirect',301)
Ota Käyttöön Nginxillä
Lisää seuraavanlainen konfiguraatio !:n server
kappaleeseen nginx Muuta /root/i18n/md/out/main/htm
oman projektisi poluksi out/main/htm
:
location / {
root /root/i18n/md/out/main/htm;
add_header Cache-Control "max-age=9999999";
if ($uri !~* \.(avif|css|html|ico|js|json|png|svg|txt|webmanifest|xml)$) {
rewrite ^ /index.html last;
}
}
Perustuu github action
Jatkuvaan Integrointiin
Voit määrittää github action
n seuraavasti:
name: i18n.site
on:
workflow_dispatch:
push:
branches:
- main
- dist
jobs:
i18n:
permissions:
repository-projects: write
contents: write
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: https://i18n.site
uses: i18n-site/github-action-i18n.site@main
with:
I18N_SITE_TOKEN: ${{ secrets.I18N_SITE_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
Kuten kokoonpanosta voidaan nähdä, tämä työnkulku käynnistyy, kun työnnetään haaraan main
ja haaraan dist
.
Työnkulku käyttää haaran nimeä vastaavaa määritystiedostoa asiakirjan julkaisemiseen. Tässä julkaisukokoonpanona käytetään arvoa .i18n/htm/main.yml
ja .i18n/htm/dist.yml
.
Suosittelemme seuraavia parhaita käytäntöjä asiakirjan julkaisuprosessissa:
Kun muutokset työnnetään haaraan main
, asiakirja käynnistyy rakennettavaksi ja otettu käyttöön esikatseluasemassa (esikatseluasema on käytettävissä github page ).
Kun esikatselusivustolla on vahvistettu, että asiakirja on oikea, koodi yhdistetään ja työnnetään haaraan dist
, ja virallinen koontiversio ja käyttöönotto siirtyvät verkkoon.
Tietenkin yllä olevan prosessin toteuttaminen vaatii enemmän konfiguraatioita.
Voit viitata varsinaiseen projektiin työnkulun komentosarjaa varten github.com/fcdoc/doc
secrets.I18N_SITE_TOKEN
ja secrets.NPM_TOKEN
kokoonpanossa edellyttävät salaisten muuttujien määrittämistä koodipohjaan.
I18N_SITE_TOKEN
i18n.site/token
NPM_TOKEN
on kokoonpanon paketin npm
julkaisutunnus npmjs.com ja luo julkaisuoikeudet (kuten alla).
Hakemiston Rakenne
public
Sivuston staattiset tiedostot, kuten favicon.ico
, robots.txt
jne.
Tässä olevat kuvaketiedostot voidaan luoda realfavicongenerator.net
.i18n
.i18n
-hakemiston alla ovat i18n.site
:n asetustiedostot, käännösvälimuisti jne. Katso lisätietoja seuraavasta luvusta "Asetukset" .
en
Lähdekielen hakemisto, joka vastaa fromTo
en
.i18n/conf.yml
määritystiedostoa
i18n:
fromTo:
en: zh
Katso käännöksen asetukset i18