Výukový program Silhouette: Tisknutelný vinyl pro přenos tepla

Je možné poslat automatický e-mail s podrobnostmi o požadované stránce webmasterovi, když návštěvník narazí na stránku s chybou 500 interních serverů?

Tímto způsobem mohl webový mistr jednat rychleji a problém vyřešit. Toto je obecná otázka, takže použitá platforma je irelevantní.

  • 1 přidejte software webového serveru a jazyk, který můžete (chtít) použít. (apache, nginx, iis, php, asp), aby vám lidé mohli ukázat příklady skriptů.

Ano, je to možné. Musíte se jen ujistit, zda je webový server IIS nebo Apache, a poté jej můžete nastavit tak, aby zobrazoval vlastní stránku (která bude obsahovat kód, který od uživatele zachytí požadované podrobnosti a pošle vám jej e-mailem), kdykoli došlo k chybě.

Například pro Apache je to opravdu jednoduché. Jednoduše vytvořte (nebo přidejte, pokud existuje) a .htaccess a použijte následující pravidlo v něm k nastavení vlastního chybového dokumentu:

ErrorDocument 500 /error-docs/500.php 
  • a teď pro nginx? :)
  • 2 @ rogerdpack, stránka_chyb

Odeslání e-mailu s každou chybou prostřednictvím vlastní chybové stránky nemusí fungovat, pokud je problém v souvislosti s PHP: vaše vlastní stránka se nemusí spustit, takže pošta nezhasne. Také obdržíte jeden e-mail na chybu, což může být povodeň.

Navrhuji místo toho implementovat nějakou formu prohledávání protokolů: nechte úlohu cron (nebo naplánovanou úlohu ve Windows) každý den nebo každých pár hodin skenovat soubory protokolu a posílat souhrn všeho, co bylo nalezeno od poslední kontroly, příslušnému správci (s). Můžete také nechat svůj skript pro kontrolu protokolů provést několik dalších věcí, například zajistit, aby byla spuštěna služba webového serveru (a jakékoli databázové služby atd.), I když jen kvůli paranoii. Pokud nic jiného, ​​jeden e-mail za sledované období může pokrýt další chybové kódy HTTP (401, 404, ...) a další věci nalezené v protokolech. Pokud tak učiníte, vždy odešlete e-mailovou zprávu i když se nic neděje: tímto způsobem víte, zda se váš skenovací skript nepodařilo spustit, protože jste přestali dostávat zprávy (jinak by žádná zpráva nemohla znamenat, že je vše v pořádku nebo stroj na hlášení poškození je poškozen).

  • Alternativně se můžete připojit k procesu protokolování přímo na Apache tím, že necháte zapisovat (nebo přepisovat) položky protokolu do perl skriptu nebo databáze, která podporuje háčky a uživatelem definované funkce (nebo je schopna odesílat e-maily jinými způsoby). Události protokolu Apache můžete také zachytit pomocí vlastního modulu.
  • Souhlasím, myslím, že vaše odpověď si skutečně zaslouží být schválena. to je praktické řešení.

Ano, při každé chybě pošlete e-mail. Také je dobré poslat co nejvíce informací, které můžete v rámci e-mailu získat. Přemýšlejte o popadnutí:

  • obsah sbírky formulářů,
  • všechny proměnné relace,
  • řetězec user-agent prohlížeče,
  • hodnoty cookie,
  • URL stránky, včetně všech parametrů řetězce dotazu.

To velmi pomáhá pro účely ladění. Získat tyto informace v klasickém ASP a ASP.NET prostřednictvím objektů Request a Session je triviální.

Prostě nemáte chybu na své vlastní chybové stránce, nebo vyděsíte webový server.

Ano, velmi možné. Kromě e-mailu můžete také zkontrolovat protokol webového serveru.

Doporučuji neposílat e-maily na každých 500, jinak by došlo k chybě, vaše poštovní schránka bude zaplavena. Stačí zaznamenat ID chyby, odeslat 1 pro stejnou chybu na stejné ID.

  • Můj názor je, že přijímání e-mailů, když se něco pokazí, dělá život webmastera o něco jednodušší, místo aby procházel regualary protokolu webového serveru. Dobrá poznámka k nápadu na 1 e-mail. Hlasovat!
  • Dík. Používal jsem ASP, za starých časů dostane ASP chybový kód, používám jej a adresu URL stránky, vytvořím jedinečný klíč a uložím do paměti, při každé chybě a při každém vyprázdnění paměti jsem dostal 1 e-mail (např. restartování aplikace). Ne tolik e-mailů, ale dost ke sledování chyb. (btw, tímto způsobem také můžete sledovat 404, ale buďte opatrní, v dnešní době příliš mnoho chyb 404 od robotů)

Můžete přidat iframe, který načte php z jiného serveru, pak vaše chybová stránka bude vždy posílat e-maily.

  • 2 Proč iframe? Nejsem si jistý, zda rozumím důvodu.

Pracoval pro vás: Charles Robertson | Chcete nás kontaktovat?