WP-ServerInfo

Popis

WP-ServerInfo zobrazuje, co vám váš poskytovatel hostingu skutečně nabízí: operační systém a webový server, verzi PHP a všechna její omezení, verzi MySQL a její proměnné, a také statistiky vašich serverů memcached a Redis, pokud je provozujete.

Není třeba nic konfigurovat a neexistuje žádná obrazovka s nastavením. Každý graf se při každém otevření stránky načítá v reálném čase z hostitelského serveru, takže se nic neukládá, není třeba nic synchronizovat a nic nemůže zastarat.

Funkce

  • Widget s informacemi o serveru na vaší řídicí ploše, který obsahuje údaje, které nejčastěji vyhledáváte
  • Kompletní přehled najdete na Nástroje -> WP-ServerInfo, rozdělený do pěti záložek
    • Obecné informace – operační systém, webový server, název hostitele, IP adresa a port, kořenový adresář, datum a vytížení serveru, a to vše vedle klíčových údajů o PHP a MySQL
    • PHP — verze, Zend Engine, SAPI, načtený konfigurační soubor, načtená rozšíření a každá direktiva php.ini s její lokální a hlavní hodnotou
    • MySQL — verze a všechny proměnné serveru
    • memcached — kompletní sada statistik s vysvětlením jednotlivých řádků, pokud je nainstalováno rozšíření Memcached nebo Memcache
    • Redis — údaje o verzi, době provozu, paměti, klientech, míře úspěšnosti a vyřazování dat, pokud je nainstalováno rozšíření phpredis
  • Velikosti a počty jsou formátovány podle vašeho místního nastavení a memory_limit = -1 se zobrazuje jako „Neomezeno“ namísto konkrétního čísla

Dary

Většinu svého volného času jsem věnoval tvorbě, aktualizaci, údržbě a podpoře těchto pluginů. Pokud se vám moje pluginy opravdu líbí a mohli byste mi věnovat pár dolarů, velmi bych to ocenil. Pokud ne, můžete je klidně používat bez jakýchkoli závazků.

Použití

Aktivujte plugin a máte hotovo.

Na vaší řídicí ploše se zobrazí widget „Server Information“ a úplná zpráva je k dispozici na adrese Nástroje -> WP-ServerInfo. K jejich použití je v obou případech nutné oprávnění manage_options, protože tyto prvky společně zobrazují kořenový adresář, IP adresu vašeho serveru a kompletní konfiguraci PHP a MySQL.

Záložky „memcached“ a „Redis“

Každá záložka se zobrazí pouze v případě, že je načteno odpovídající rozšíření PHP, a ve výchozím nastavení každá z nich poskytuje informace o serveru běžícím na tomto počítači — localhost:11211 pro memcached, 127.0.0.1:6379 pro Redis. Pokud se vaše mezipaměť nachází jinde, nasměrujte plugin na ni ze souboru functions.php vašeho šablony nebo z malého pluginu typu „must-use“:

add_filter(
    'wp_serverinfo_redis_server',
    function ( $server ) {
        $server['host']    = 'redis.internal';
        $server['port']    = 6379;
        $server['timeout'] = 1;

        return $server;
    }
);
wp_serverinfo_memcached_server takes the same shape, with `host` and `port`. Either filter may return only the keys it wants to change; the rest keep their defaults. A `unix://` socket path works as the Redis `host`, with `port` set to `0`.

Předání obrazovek někomu jinému

Každá kontrola oprávnění prochází jedním filtrem, takže web, který chce, aby si zprávu mohl prohlížet uživatel bez administrátorských oprávnění, provede změnu na jednom místě:

add_filter(
    'wp_serverinfo_capability',
    function ( $capability, $context ) {
        return 'report' === $context ? 'edit_pages' : $capability;
    },
    10,
    2
);
$context is `report` for the Tools screen and `widget` for the Dashboard widget, so the two can be answered differently.

Snímky obrazovky

Instalace

  1. Nainstalujte a aktivujte plugin.

To je vše. Neexistuje žádná obrazovka s nastavením. Widget „Server Information“ se zobrazí na vašem řídicím panelu a úplná zpráva je k dispozici na adrese WP-Admin -> Nástroje -> WP-ServerInfo. Oba vyžadují oprávnění manage_options, protože společně poskytují informace o kořenovém adresáři, IP adrese vašeho serveru a celé konfiguraci PHP a MySQL.

Nejčastější dotazy

Kam se poděla ta obrazovka? Dřív byla pod Dashboardem.

Ve verzi 3.0.0 byla přesunuta na Nástroje -> WP-ServerInfo. Jedná se spíše o přehled o vašem hostingu než o panel na řídicím panelu, a právě v sekci Nástroje WordPress tento typ obrazovek ukládá. Widget na řídicím panelu se nepřesunul a jeho tlačítko „Zobrazit vše“ vede na novou adresu.

Chybí záložka „memcached“ nebo „Redis“

Záložka se zobrazí pouze v případě, že je načteno příslušné rozšíření PHP — například Memcached nebo Memcache v jednom případě, phpredis v druhém. Zkontrolujte řádek „Načtená rozšíření“ na záložce PHP. Instalace objektové cache drop-in není totéž jako mít nainstalované příslušné rozšíření.

Záložka tam je, ale zobrazuje se hlášení, že se nepodařilo navázat spojení

Rozšíření je nainstalováno, ale na adrese, kterou plugin zkoušel, se nic neozvalo. Ve výchozím nastavení se jedná o tento počítač na výchozím portu; pokud je vaše mezipaměť na jiném hostiteli, podívejte se na část „Záložky memcached a Redis“ výše.

Zatížení serveru: N/A

Průměrné zatížení je koncept pocházející z Unixu, takže ve Windows je jeho hodnota vždy „N/A“. Na jiných serverech plugin nejprve zkusí sys_getloadavg(), poté /proc/loadavg a nakonec uptime prostřednictvím shellu; na sdílených serverech jsou však obvykle všechny tři možnosti deaktivovány.

Velikost mezipaměti dotazů MySQL je prázdná

V MySQL 8.0 byla mezipaměť dotazů odstraněna, takže neexistuje žádná proměnná, kterou by bylo možné vypsat. Před verzí 3.0.0 to místo toho vyvolalo chybu „Pokus o čtení vlastnosti s hodnotou null“.

Ukládá tento plugin nějaké údaje do mé databáze?

Jeden řádek, a to ještě velmi krátký. Není co konfigurovat, takže plugin neukládá vůbec žádná nastavení — pouze wp_serverinfo_version, což zaznamenává verzi, ve které byl plugin naposledy spuštěn, aby aktualizace věděla, z jaké verze se provádí. Odstranění pluginu z obrazovky Pluginy jej odstraní spolu se stavem na ovládacím panelu pro jednotlivé uživatele, který WordPress zaznamenává, když někdo widget zavře, skryje nebo změní jeho pořadí.

Je v pořádku, když se klient podívá přes rameno na záložku PHP?

Je vytvořena na základě funkce ini_get_all(), takže zobrazuje pouze direktivy a jejich hodnoty, nic jiného. Před verzí 2.0.0 čerpala data z výstupu funkce phpinfo(), která zobrazovala také proměnné prostředí a hlavičky požadavku.

Recenze

3. 8. 2023
WP 6.2.2 and PHP 8.1. After installed, don’t know how to access the plugin, the Menu link does not display anywhere.
2. 4. 2020 1 odpověď
I purchased the full version and it saved me a lot of time in migration. I had problems and service has been good and fast. To be considered the limitations due to hosting php settings before purchase (otherwise you have to do the migration on local and then upload the whole website)
Přečtěte si všech 17 recenzí

Autoři

WP-ServerInfo je otevřený software. Následující lidé přispěli k vývoji tohoto pluginu.

Spolupracovníci

Plugin „WP-ServerInfo“ byl přeložen do 8 jazyků. Děkujeme všem překladatelům za jejich pomoc.

Přeložte “WP-ServerInfo” do svého jazyka.

Zajímá vás vývoj?

Prohledejte kód, podívejte se do SVN repozitáře, nebo se přihlaste k odběru protokolu vývoje pomocí RSS.

Přehled změn

3.0.0

  • AKTUÁLNÍ ZPRÁVA: Vyžaduje WordPress 6.8 a PHP 8.2, což představuje zvýšení oproti verzím 4.0 a 7.2.
  • AKTUÁLNÍ ZPRÁVA: Zpráva byla přesunuta z Dashboard -> WP-ServerInfo do Tools -> WP-ServerInfo. Slug stránky se nezměnil, takže adresa URL se změnila z index.php?page=wp-serverinfo na tools.php?page=wp-serverinfo.
  • AKTUÁLNÍ ZPRÁVA: Všech třicet globálních funkcí bylo odstraněno bez přechodných řešení — format_filesize(), format_php_size(), display_serverinfo(), get_mysql_version(), get_serverload(), get_gd_version() a ostatní jsou nyní metodami tříd WP_ServerInfo_Format, WP_ServerInfo_MySQL, WP_ServerInfo_PHP a WP_ServerInfo_Cache. Nikdy nebyly součástí zdokumentovaného API a jejich obecné názvy kolidovaly s jinými pluginy
  • NOVINKA: Filtry wp_serverinfo_memcached_server a wp_serverinfo_redis_server umožňují nasměrovat panely memcached a Redis na jiný server než localhost
  • NOVINKA: Filtr wp_serverinfo_capability, díky kterému lze zprávu a widget předat samostatně i někomu jinému než správci
  • NOVINKA: Panely memcached a Redis zobrazují hlášení, že server je nedostupný, místo toho, aby se zobrazil prázdný panel
  • AKTUÁLNÍ ZPRÁVA: V prostředí Multisite nyní zpráva a widget na řídicím panelu vyžadují manage_network_options namísto manage_options. Správce webu v síti je jejím nájemcem a tato obrazovka zobrazuje kořenový adresář dokumentů, vlastní adresu serveru, načtený soubor php.ini, všechny direktivy ini a všechny proměnné serveru MySQL — samotný WordPress uzavírá stránku Stav webu, která této stejné osobě poskytuje výrazně méně informací. Na samostatném webu se nic nemění. Síť, která chce tuto funkci delegovat, tak může učinit prostřednictvím wp_serverinfo_capability
  • OPRAVENO: Na záložce PHP se zobrazovala hodnota každé direktivy ini, včetně těch, které obsahují přihlašovací údaje namísto konfiguračních údajů — mysqli.default_pw, DSN pro Redis v session.save_path, heslo ssmtp v sendmail_path a licenční klíče a tokeny API, které přidávají monitorovací rozšíření. Tyto hodnoty se nyní zobrazují jako [hidden]; direktiva je stále uvedena v seznamu, takže nakonfigurovaný tajný údaj lze stále odlišit od toho, který chybí. wp_serverinfo_secret_directives filtruje tento seznam
  • NOVINKA: Řádek wp_serverinfo_version, který zaznamenává verzi z posledního spuštění, a soubor uninstall.php, který ji odstraní na jednom webu i v celé síti
  • NOVINKA: Odinstalace nyní vymaže stav ovládacího panelu pro jednotlivé uživatele, který WordPress zaznamenává pro widget „Informace o serveru“ a který dříve zůstával v databázi trvale
  • OPRAVENO: Chyba „Pokus o čtení vlastnosti s hodnotou null“ při každém vykreslení záložky „Obecné“ a widgetu na řídicím panelu, protože MySQL 8.0 odstranilo query_cache_size a na chybějící řádek se přesto odkazovalo
  • OPRAVENO: Velikosti zkráceného zápisu v PHP psané malými písmeny (128m, 1g) se zobrazovaly jako nezpracovaný řetězec namísto formátované velikosti
  • OPRAVENO: memory_limit = -1 se zobrazovalo jako „neznámé“ namísto „Neomezené“
  • OPRAVENO: max_execution_time = 0, což znamená, že není nastaven časový limit pro skript, a zobrazuje se jako „N/As“
  • OPRAVENO: Hodnota ležící přesně na hranici jednotky se přiřazovala k jednotce pod ní, takže jeden gibibyte se zobrazoval jako „1 024,0 MiB“
  • OPRAVENO: Sonda pro měření zatížení serveru spustila příkaz system('uptime'), který výstup pouze vypíše, místo aby jej vrátila, takže na hostech, kde byla povolena funkce system(), se do tabulky „General“ zapsal nezpracovaný řádek s dobou provozu.
  • OPRAVENO: Widget na ovládacím panelu zobrazoval u IP adresy serveru v IIS pouze „:80“
  • OPRAVENO: Varování PHP 8 v panelu memcached v případě, že server nehlásil všechny statistické údaje
  • ZMĚNĚNO: Načíst zatížení serveru z sys_getloadavg(), je-li k dispozici; v opačném případě použít /proc/loadavg a poté shell
  • ZMĚNA: Plugin byl přebudován do struktury includes/, kde každá část je v samostatné třídě s předponou WP_ServerInfo_; hlavní soubor nyní obsahuje pouze hlavičku, konstanty a inicializační kód
  • ZMĚNA: Odstranění nefunkčního záložního řešení pro získávání informací pomocí phpinfo() při ověřování verze GD
  • ZMĚNA: Obrazovky využívají vlastní třídy „table“ a „tab“ jádra a neobsahují vůbec žádné vložené styly. Zpracování směru psaní zprava doleva (RTL) je zajištěno jediným atributem dir, nikoli pomocí stylu s fyzickým atributem text-align a !important.
  • ZMĚNA: Přidání sady testů PHPUnit, a to jak pro jednotlivé weby, tak pro více webů, a integrace s GitHub Actions CI
  • OPRAVENO: Průměrné zatížení serveru bylo formátováno pouze jedním ze čtyř možných způsobů, jak se tato hodnota načítá, takže to, co se zobrazovalo v tabulce „General“, záviselo na tom, který způsob váš hostitel použil. Každá větev nyní vrací číselnou hodnotu, která je formátována jednotně – s desítkovým oddělovačem podle vašeho regionálního nastavení, nikoli vždy s tečkou.