Jump to content

Podręcznik:$wgReadOnly

From mediawiki.org
This page is a translated version of the page Manual:$wgReadOnly and the translation is 72% complete.
Ustawienia skryptów konserwacyjnych: $wgReadOnly
Blokuje edytowanie, wyświetla podany jako ciąg powód.
Wprowadzono w wersji:Before 1.1.0
Usunięto w wersji:nadal w użyciu
Dozwolone wartości:(ciąg znaków) lub null/false
Domyślna wartość:null (1.5.7+)
false (1.1.0-1.5.6)

Szczegóły

Działa podobnie jak $ReadOnlyFile, jednak używa zmiennej tekstowej zamiast pliku.

Jeżeli ustawiona jako ciąg w pliku LocalSettings.php, $wgReadOnly blokuje edytowanie, wyświetlając podany jako ciąg powód. Podany powód jest poprzedzany treścią z MediaWiki:Readonlywarning.

$wgReadOnly = 'Trwa aktualizacja oprogramowania tej wiki. Zapraszamy ponownie za kilka godzin';

Powyższy przykład blokuje wiki i pokazuje domyślny komunikat na stronach edycji i dodatkowo pokazuje dodany ciąg jako wyjaśnienie, dlaczego wiki została zablokowana. W tekście wyświetlanym jako informacja o tym, że wiki jest w trybie tylko do odczytu można stosować wikitekst. Dzięki temu możliwe jest umieszczenie w komunikacie linków i formatowania tekstu.

Uwaga Uwaga: Wbrew nazwie ta opcja nie przełącza bazy danych w tryb tylko do odczytu! Nawet jeśli zmienna $wgReadOnly jest ustawiona, to, mimo wszystko, rozszerzenia, skrypty korzystające z API oraz zdarzenia zapisane w pamięci podręcznej mogą modyfikować bazę danych.

Aktualizacja

Począwszy od MediaWiki 1.27 nie jest możliwe wykonanie skryptu upgrade jeśli zmienna $wgReadOnly jest ustawiona.

A simple solution is to set it to read only when not running from the command line, which will not affect the command line update script:

$wgReadOnly = ( PHP_SAPI === 'cli' ) ? false : 'This wiki is currently being upgraded to a newer software version. Please check back in a couple of hours.';

Sesje

If sessions are not stored on an external caching system such as Redis or Memcached, users may get logged-out, and no further login attempts would succeed during the time the wiki is set read only, receiving a message similar to:

Wydaje się, że wystąpił błąd z Twoją sesją zalogowania; to działanie zostało anulowane, aby uniknąć przechwycenia sesji. Prześlij formularz jeszcze raz.

Pamięć podręczna DB

Caches that use the database cannot be written to during read only mode, which could prevent more than just editing (depending on the configuration, logging in or even viewing pages). This can be avoided by disabling cache, albeit at the cost of making your wiki slow. This can be accomplished with the following settings in LocalSettings.php:

$wgMessageCacheType = $wgMainCacheType = $wgParserCacheType = $wgSessionCacheType = CACHE_NONE;
$wgLocalisationCacheConf['storeClass'] = 'LCStoreNull';

If you want your wiki to be fast, while still not using the DB, you should consider using something like Memcached. Zobacz $wgMainCacheType i $wgLocalisationCacheConf , aby uzyskać więcej szczegółów. If you want to enable logins while the database is readonly, at least $wgSessionCacheType needs to be set to some real non-DB caching mechanism.

Miniaturki

When in read-only mode, images which need to be transformed or scaled will be shown as an error message instead of as an image. To avoid this problem, put the following in the "LocalSettings.php" file:

$wgIgnoreImageErrors = true;