Opcionális Weblate modulok¶
Több opcionális modul érhető el a rendszer testreszabásához.
Git exportáló¶
Lehetővé teszi az alapul szolgáló Git-tároló olvasásra korlátozott elérését HTTP(S) protokollon keresztül.
Telepítés¶
A
settings.pyfájlban adja hozzá azweblate.gitexportmodult a telepített alkalmazásokhoz:INSTALLED_APPS += ("weblate.gitexport",)
A meglévő tárolók exportálásához telepítés után futtassa az adatbázis-migrációt:
weblate migrate
Tipp
A hivatalos Docker-képen a Git exportáló alapértelmezés szerint be van kapcsolva. Kikapcsoláshoz használja a következőt:
WEBLATE_REMOVE_APPS=weblate.gitexport
Használat¶
A modul automatikusan bekapcsolódik a Weblate működésébe, és beállítja az exportált tároló URL-jét az adott összetevő beállításainál. A tárolók a Weblate URL-jének /git/ útvonalán keresztül érhetők el, például: https://example.org/git/weblate/main/.
A nyilvánosan elérhető projektek tárolói hitelesítés nélkül klónozhatók:
git clone 'https://example.org/git/weblate/main/'
Access to browse the repositories with restricted access (with Private
access control or when REQUIRE_LOGIN is enabled)
requires an API token which can be obtained in your
user profile:
git clone 'https://user:KEY@example.org/git/weblate/main/'
Megjegyzés
Weblate serves the Git repository itself, but it does not serve Git LFS
objects. For repositories using Git LFS, clone from the upstream repository
and add Weblate as another remote. If you only need Git-tracked files, you
can clone from Weblate with GIT_LFS_SKIP_SMUDGE=1 to skip downloading
Git LFS objects.
Tipp
Alapértelmezés szerint a Felhasználók csoport tagjai és az anonim felhasználók is hozzáférnek a nyilvános projektek tárolóihoz a Tároló hozzáférés és a Képzett felhasználó szerepkörökön keresztül.
Számlázás¶
A Hosted Weblate szolgáltatásban használatos a számlázási csomagok meghatározására, a számlák és a használati korlátok nyomon követésére.
Telepítés¶
1. Add weblate.billing to installed apps in
settings.py:
INSTALLED_APPS += ("weblate.billing",)
Futtassa az adatbázis-migrációt az opcionális, további adatbázis-struktúrák telepítéséhez:
weblate migrate
Számlázási csomag létrehozása és hozzárendelése¶
A számlázás aktiválásához először létre kell hozni egy számlázási csomagot. Ehhez navigáljon az Adminisztráció részhez (a csavarkulcs ikon), és nyissa meg az Eszközök képernyőt. Innen lépjen tovább a Django admin felületre.
A Django admin felületen keresse meg a BILLING szekciót, és adjon hozzá egy számlázási csomagot. Például létrehozhat egy Ingyenes csomagot költség nélkül.
Ha meglévő projekthez szeretne számlázási csomagot rendelni, ezt szintén a Django admin felületen belül, a Customer billings opcióval teheti meg.
Végül a Django admin felületen belül található egy Invoice lehetőség is a vevői befizetések nyilvántartására.
Használat¶
A telepítés után a számlázást az adminisztrátori felületen vezérelheti. Az engedélyezett számlázással rendelkező felhasználók új Számlázás lapot kapnak a felhasználói profiljukban.
A számlázási modul emellett lehetővé teszi a projektadminisztrátorok számára, hogy új projekteket és összetevőket hozzanak létre rendszergazdai jogosultság nélkül (lásd: Fordítási projektek és összetevők hozzáadása). Ez akkor lehetséges, ha az alábbi feltételek teljesülnek:
A számlázás a beállított korlátokon belül van (túllépés esetén blokkolásra kerül az új projekt/összetevő létrehozása), és ki van fizetve (ha a csomag nem ingyenes)
A felhasználó adminisztrátora egy meglévő, számlázással rendelkező projektnek vagy ő a számlázási fiók tulajdonosa (az utóbbi szükséges új számlázási fiók létrehozásakor a projektek importálásához).
Projekt létrehozásakor a felhasználó kiválaszthatja (ha több is elérhető), hogy melyik számlázási fiókot terhelje a projekt.
Jogi modul¶
A Hosted Weblate szolgáltatásban használt modul, amely a szükséges jogi dokumentumokat biztosítja. Üres dokumentumsablonokkal érkezik, amelyeket ki kell tölteni az alábbiak szerint:
legal/documents/tos.htmlHasználati feltételek dokumentuma
legal/documents/privacy.htmlAdatvédelmi irányelvek dokumentuma
legal/documents/summary.htmlRövid összefoglaló a használati feltételekről és az adatvédelmi irányelvekről
Ha módosítja a használati feltételek dokumentumait, frissítse a LEGAL_TOS_DATE értékét, hogy a felhasználókat újra kötelezze az elfogadásra.
Megjegyzés
Legal documents for the Hosted Weblate service operated by Weblate s.r.o. are available in this Git repository: <https://github.com/WeblateOrg/wllegal/tree/main/wllegal/templates/legal/documents>.
The bundled terms of service and related legal documents are specific to that service and are not intended for general use. They might still come in handy as a starting point if adjusted to meet your needs.
Telepítés¶
1. Add weblate.legal to installed apps in
settings.py:
INSTALLED_APPS += ("weblate.legal",)
# Optional:
# Social auth pipeline to confirm TOS upon registration/subsequent sign in
SOCIAL_AUTH_PIPELINE += ("weblate.legal.pipeline.tos_confirm",)
# Middleware to enforce TOS confirmation of signed in users
MIDDLEWARE += [
"weblate.legal.middleware.RequireTOSMiddleware",
]
Futtassa az adatbázis-migrációt az opcionális, további adatbázis-struktúrák telepítéséhez:
weblate migrate
A
weblate/legal/templates/legal/mappában található jogi dokumentumokat igazítsa a saját szolgáltatásához.
Tipp
In Docker deployments, enable the legal module using
WEBLATE_LEGAL_INTEGRATION instead of editing
settings.py. Use tos-confirm to enable the legal module and
terms of service confirmation enforcement, or wllegal to additionally
load the hosted legal document templates used by services operated by
Weblate s.r.o. These templates are not intended for general use. To provide
your own templates in Docker, place them in
/app/data/python/customize/templates/legal/documents, see
Logó és egyéb statikus fájlok cseréje.
Használat¶
A telepítés és a szerkesztés után a jogi dokumentumok megjelennek a Weblate felületén.
Profilképek¶
A profilképek szerveroldali letöltése és gyorsítótárazása alapértelmezés szerint csökkenti az információszivárgás kockázatát a képeket kiszolgáló oldalak felé. Az e-mail-címek alapján történő profilkép-letöltés beépített támogatása kikapcsolható az ENABLE_AVATARS beállítással.
Weblate jelenleg a következőket támogatja:
Lokalizációs CDN¶
The JavaScript lokalizációs CDN and Translation files CDN add-ons
write files to LOCALIZE_CDN_PATH; Weblate does not serve them.
Configure the web server or CDN serving LOCALIZE_CDN_URL as a
public, read-only static file host.
Treat every published CDN file as public. The add-on specific UUID in the URL is not an access-control mechanism. Do not enable CDN add-ons for components that contain private strings, unreleased product text, customer data, internal URLs, API examples, repository paths, translator comments, or file-format metadata that should not be exposed.
The Translation files CDN add-on publishes raw translation files in formats supported by Weblate. Some formats can be interpreted by browsers or other clients as HTML, SVG, XML, JavaScript, YAML, or application-specific configuration. Serve the CDN from a dedicated domain that is separate from Weblate and from the application consuming the translations. Do not share authentication cookies with the CDN domain.
Recommended server configuration:
Serve only the directory configured by
LOCALIZE_CDN_PATH; do not expose Weblate repositories, backups, media, configuration, or the whole data directory.Disable directory listing.
Use HTTPS and make the CDN host read-only from the web server.
Send X-Content-Type-Options with
nosniff.Configure conservative MIME types. Serve unknown translation formats as text/plain or application/octet-stream; only serve
weblate.jsas JavaScript.For raw translation formats that are not intended to be rendered in a browser, consider adding Content-Disposition with
attachment.Configure
Access-Control-Allow-Originonly for sites that need browser access to the files.Set cache lifetimes that match your update expectations, and purge CDN caches when stale translations must disappear quickly.
The following nginx snippet serves only the configured CDN directory and applies conservative defaults for raw translation files:
#
# nginx configuration for the Weblate localization CDN
#
# You will want to change:
#
# - server_name to match the host configured in LOCALIZE_CDN_URL
# - root to match LOCALIZE_CDN_PATH
# - Access-Control-Allow-Origin to the sites that need browser access
# - TLS configuration if HTTPS is not terminated before nginx
#
server {
listen 80;
server_name cdn.example.com;
# LOCALIZE_CDN_PATH
root /home/weblate/data/l10n-cdn;
autoindex off;
disable_symlinks on;
location = / {
return 404;
}
# The JavaScript localization add-on publishes this loader.
location ~ "^/[0-9a-f]{32}/weblate\.js$" {
try_files $uri =404;
types {
application/javascript js;
}
default_type application/javascript;
add_header X-Content-Type-Options nosniff always;
# add_header Access-Control-Allow-Origin "https://www.example.com" always;
expires 1h;
}
# Other CDN files are translation files. Serve them conservatively so raw
# formats are not interpreted as active browser content.
location / {
try_files $uri =404;
types {
}
default_type text/plain;
add_header X-Content-Type-Options nosniff always;
add_header Content-Disposition "attachment" always;
# add_header Access-Control-Allow-Origin "https://www.example.com" always;
expires 1h;
}
}
Git véglegesítések aláírása GnuPG-vel¶
Minden véglegesítés aláírható a Weblate példány saját GnuPG-kulcsával.
Kapcsolja be a
WEBLATE_GPG_IDENTITYbeállítást. (A Weblate szükség esetén létrehoz egy GnuPG-kulcsot, és azzal írja alá az összes fordítási véglegesítést.)Ez a funkció GnuPG 2.1 vagy újabb verziót igényel.
A kulcs a
DATA_DIRkönyvtárban található, a nyilvános kulcs pedig a „Névjegy” oldalon tekinthető meg:
Alternatív megoldásként meglévő kulcsokat is importálhat Weblate-be, ehhez a
HOME=$DATA_DIR/homebeállítást használja a gpg meghívásakor.
Tipp
A kulcsanyag hosszú ideig gyorsítótárazódik Weblate-ben. Ha a WEBLATE_GPG_IDENTITY beállítással generált kulcsot később egy azonosítót használó meglévő kulcsra szeretné cserélni, ajánlott a redis gyorsítótár ürítése, hogy a módosítás érvényesüljön.
Megjegyzés
Amennyiben több gép között osztja meg a DATA_DIR könyvtárat, a GnuPG megbízható működése érdekében kövesse a https://wiki.gnupg.org/NFS oldalon található útmutatót.
Lásd még
Sebességkorlátozás¶
A 4.6 verzióban változott: A sebességkorlátozás már nem vonatkozik a bejelentkezett rendszergazdákra.
A Weblate-ben több művelet is sebességkorlátozás alá esik. Legfeljebb RATELIMIT_ATTEMPTS próbálkozás engedélyezett RATELIMIT_WINDOW másodpercen belül. Ezt követően a felhasználó zárolásra kerül RATELIMIT_LOCKOUT időtartamra. Vannak speciális beállítások is egyes műveleti körökre, például RATELIMIT_CONTACT_ATTEMPTS vagy RATELIMIT_TRANSLATE_ATTEMPTS. Az alábbi táblázat tartalmazza az összes elérhető műveleti kört.
Az alábbi műveletek esnek sebességkorlátozás alá:
Név |
Hatókör |
Engedélyezett próbálkozások |
Sebességkorlátozási időablak |
Zárolási időszak |
|---|---|---|---|---|
Regisztráció |
|
5 |
300 |
600 |
Üzenetküldés az adminisztrátoroknak |
|
2 |
300 |
600 |
Jelszavas hitelesítés bejelentkezéskor |
|
5 |
300 |
600 |
Kétlépcsős hitelesítés |
|
5 |
300 |
600 |
Teljes oldalas keresés |
|
6 |
60 |
60 |
Fordítás |
|
30 |
60 |
600 |
Szójegyzék bővítése |
|
30 |
60 |
600 |
Új nyelvre történő fordítás megkezdése |
|
2 |
300 |
600 |
Új projekt létrehozása |
|
5 |
600 |
600 |
Bejelentkezett felhasználóknál a sebességkorlátozás munkamenet-alapú, míg nem bejelentkezett felhasználóknál az IP-címen alapul.
Ha egy felhasználó AUTH_LOCK_ATTEMPTS alkalommal sikertelenül próbál bejelentkezni, a jelszavas hitelesítés le lesz tiltva az adott fióknál, amíg a jelszó helyreállítási folyamaton nem megy végig.
A beállítások Docker-konténerben is alkalmazhatók, ilyenkor a változónév elé WEBLATE_ előtagot kell adni, például a RATELIMIT_ATTEMPTS így lesz WEBLATE_RATELIMIT_ATTEMPTS.
Az API-hoz külön sebességkorlátozási beállítások tartoznak, lásd: API lekérdezési korlátozás.