O nutnosti smazat install.php jsem se poučil už před lety, když jsem zprovoznil (na VPSku) můj vůbec první WordPress. Tento soubor jsem nesmazal a někdo (naštěstí hodný) do mě oprávněně rýpnul tím, že vlezl do mého webu a přidal tam článek.
WordPress bohužel po instalaci stále nemaže install.php a je s tím spojená jedna velmi nepříjemná letitá chyba.
Pokud dojde k výpadku databáze, tak by se měla objevit stránka s chybovou informací o “výpadku”, ale zaručeno to není. Zcela běžně se místo toho objeví právě install.php – a ten umožňuje “nainstalovat” WordPress – což obnáší i to, že se vám při vhodném načasování někdo může vloupat do vašeho webu a ukrást ho.
Pokud by vše fungovalo jak mělo, tak install.php už nebezpečný není, WordPress to má už ošetřené a při pokusu o otevření se zobrazuje to, co vidíte v obrázku v záhlaví.
Smazat
Poté co dokončíte instalaci byste tedy rozhodně install.php měli smazat, nebo, ještě lépe, ho nahradit něčím bezpečným. Smažete-li ho a dojde k výpadku databáze, tak váš web bude vyhazovat “TOO MANY REDIRECTS”, takže je vhodnější ho nahradit.
Install.php najdete ve složce wp-admin, takže stačí použít FTP a postarat se o nápravu. Buď smazáním souboru, nebo, chcete-li si ho nechat, tak přejmenováním – třeba na install.php.original
Háček je i v tom, že po aktualizaci WordPressu se vám tam install.php opět objeví. Aktualizace prostě zjistí chybějící soubor a dá ho tam.
Zablokujte přístup
Pokud nechcete mazat, tak můžete do .htaccess přidat následující
# PROTECT install.php
<Files install.php>
Order Allow,Deny
Deny from all
Satisfy all
</Files>
Dejte tam náhradu, vlastní kód
Případně, třetí elegantní řešení, můžete nahradit PHP kódem, který v případě výpadku bude zobrazovat 503 chybu (v Chrome 500 chybu).
<?php header("HTTP/1.1 503 Service Temporarily Unavailable"); ?>
<?php header("Status 503 Service Temporarily Unavailable"); ?>
<?php header("Retry-After 3600"); // 60 minutes ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Error Establishing Database Connection</title>
</head>
<body>
<h1>Error Establishing Database Connection</h1>
<p>We are currently experiencing database issues. Please check back shortly. Thank you.</p>
</body>
</html>
Případně, varianta, která vám pošle upozornění (musíte doplnit váš e-mail, nezapomente).
<?php
/*
WordPress install.php replacement page
@ https://perishablepress.com/important-security-fix-for-wordpress/
Place in /wp-admin/ directory
*/
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
header('Retry-After: 3600'); // 3600 seconds = 60 minutes
mail('semdejtevas@emial', 'Database Error', 'There is a problem with the database!');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Site offline for maintenance</title>
</head>
<body>
<h1>We'll be right back..</h1>
<p>The site is currently offline for maintenance.</p>
</body>
</html>
Pomůže WordFence?
WordFence blokuje snahu o otevření install.php, ale má to jeden háček. Při skutečném výpadku databáze to neudělá. Takže na toto řešení se spoléhat nemůžete.
Další tipy týkající se WordPressu
-
TIP#2393: Jak zvětšit omezení velikosti souborů nahrávatelných na WordPress?
Jedna z věcí na které narazíte při (například) používání QNAP MARS zálohování pro WordPress je nemožnost obnovit velké weby. Platí to ale i pro jiná zálohovací zařízení – většina hostingu má omezenou…
-
TIP#2388: Jak ve WordPressu získat možnost duplikovat (kopírovat) příspěvky
Jedna dost často potřebná a přesto chybějící věc ve WordPressu je vytvořit kopii (duplikát) nějakého příspěvku či stránky. Můžete to řešit pomoci copy/paste, ale to je poněkud otravné a zdlouhavé. Související příspěvky…
-
TIP#2380: Jak najít ve WordPressu příspěvky/stránky/opakovaně použitelné bloky kde používáte konkrétní prvek? Jak kopírovat a měnit konkrétní blok?
Tohle je taková trochu nedotažená věc ve WordPressu. Můžete používat nějaké stavební prvky – jako třeba /blog z Wodpress.com Editing Toolkit pro výpis příspěvků z určitého štítku/rubriky. Jenže v okamžiku kdy ho…
-
TIP#2375: Jak na WordPressu na výpisy článků podle štítku nebo rubriky?
Na WordPress.com je součástí instalace blok /blog pro výpis článků – podporuje podle štítku a rubriky (dost důležité, že oboje a zejména podle štítůu), různé velikost písma i náhledových obrázků (také dost…
-
TIP#2372: Lepší menu pro WordPress se vyplatí. Jak na to?
WordPress umí přímo vytvářet menu a vaše šablona s nimi bude umět pracovat – zobrazovat je svisle či vodorovně, umístit podle potřeby, podporovat úrovně položek, umět jich případně i více. Vy sami…
-
TIP#2370: Jak měřit návštěvnost webu bez Google Analytics?
Nechtít Google Analytics na webu je dost rozumné pokud nepotřebujete žádné extra vychytávky, analýzy a propojení se vším možným od Google, Dost rozumné i s ohledem na soukromí (a GDPR a sušenkové…
-
TIP#2365: WordPress pluginy pro přímé sledování návštěvnosti. Bez Google Analytics
Rozhodl jsem se zbavit Google Analytics a začal zkoumat, jak sledovat návštěvnost mých webů na WordPressu lokálně, tedy přímo na serveru, ideálně i zcela bez cookies. Důvodů se objevilo několik. Související příspěvky…
-
TIP#2358: Co si pořídit na Cookie bannery místo Complianz?
Peklo s cookies od Evropské Unie má za následek, že si na weby musíme pořizovat šílená řešení pro cookies bannery a ještě šílenější řešení pro blokování cookies, které někomu nesmíme (nebo ještě…
-
TIP#2352: Jak ve WordPressu přesunout (hromadně) články od jednoho autora na jiného?
Ten nejprimitivnější způsob je, že si zobrazíte články/příspěvky klasicky v přehledu, nastavíte si případně větší počet než 20 (100 se ještě jakž takž dá), uděláte výběr všech a pak nad výpisem jdete…
-
TIP#2334: Velký přehled zásadních pluginů pro WordPress
Máme tu Jak na vlastní WordPress. Nepostradatelné pluginy pro WordPress sepsaný v říjnu 2021 při velkém stěhování z WordPress(dot)com na vlastní WordPress. Velmi šikovný přehled pluginů v čitelnější formě. Ale vyplatí se…
-
TIP#2329: Měl bych zamezit indexování štítků či rubrik na WordPressu? Jak to udělat?
Pokud se přes site:pooh.cz či site:365tipu.cz podíváte (lépe řečeno, podívali jste se) na věci zaindexované Google, tak uvidíte šílený zmatek Několik tisíc výsledků zahrnujících v prvním případě na dvě tisícovky (v druhém…
-
TIP#2324: Optimalizace (zmenšování velikosti) obrázků na WordPressu. Jak na to?
Dobrá zpráva je, že v tomto tipu najdete množství pluginů, které vám mohou pomoci se zmenšováním, konverzí a optimalizací obrázků pro váš web/blog na WordPressu. A to jak při nahrávání (což je…
-
TIP#2304: Je ve WordPressu nějaký rozdíl mezi výchozími šablonami a ostatními?
WordPress má “výchozí” šablony, ty které vytváří přímo WordPress(org). Každý rok je jedna nová, takže se jmenují podle roku kdy vznikly (viz například Twenty Twenty-Two). Pak je tu záplava, tisíce, šablon od…
-
TIP#2264: Jak využít QNAP pro monitoring běhu webových serverů? A nejenom QNAP
Monitoring běhu/dostupnosti webových serverů tu řeší tip Jak na monitoring dostupnosti/funkčnosti serveru? Je tam řeč o WEDOS.online, které je dostupné zdarma v beta verzi a docela dlouho ho používám pro monitoring –…
-
TIP#2262: Co když má váš WordPress problémy a nestíhá?
Po migraci FeedIT.cz na vlastní WordPress u BlueBoardu (z WordPress.com) se objevil problém s nestíháním. Ten web má přes 55 tisíc příspěvků, takže i když nemá nijak zásadní návštěvnost (okolo jednoho tisíce…

















