{"id":232154,"date":"2023-01-21T19:16:00","date_gmt":"2023-01-21T16:16:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232154"},"modified":"2022-11-10T07:50:51","modified_gmt":"2022-11-10T04:50:51","slug":"serveri-oleku-toeoeaja-kuvamine-veebilehtedel-php-ja-crontabi-abil","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/serveri-oleku-toeoeaja-kuvamine-veebilehtedel-php-ja-crontabi-abil\/","title":{"rendered":"Serveri oleku t\u00f6\u00f6aja kuvamine veebilehtedel PHP ja Crontabi abil"},"content":{"rendered":"<p>Me k\u00f5ik teame <a href=\"https:\/\/helloacm.com\/use-php-script-to-monitor-temperature-and-uptime-for-raspberry-pi-in-the-browser\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">selles postituses<\/a> varem, et saame kasutada PHP- <strong>s shell_exec<\/strong> v\u00f5i <strong>exec<\/strong>, et saada serverisse v\u00e4lise programmi v\u00e4ljund. Ilmselgelt saame serveri oleku saamiseks k\u00e4ivitada linux k\u00e4su <strong>uptime<\/strong>, mis annab midagi sellist (v\u00f5i kui seda blogi alla kerida, siis selle lehe l\u00f5pust leiad peaaegu reaalajas olekuuuenduse, st mida uuendatakse iga kord 5 minutit):<\/p>\n<pre><code>\u00a010:25:01 up 31 days, 15:17, \u00a00 users, \u00a0load average: 0.01, 0.09, 0.12<\/code><\/pre>\n<p>Nendel p\u00f5hjustel ei ole aga soovitatav k\u00e4ivitada otse <strong>uptime<\/strong> k\u00e4sku kasutades <strong>shell_exec<\/strong> v\u00f5i <strong>exec .<\/strong><br \/>\nEsiteks v\u00f5ivad veebimajutusettev\u00f5tted keelata <strong>shell_exec<\/strong> ja <strong>exec<\/strong> (niipalju kui mina tean), peamiselt jagatud hostidel turvalisuse huvides. Fasthosts keelab selle, kuid Godday seevastu ei keela seda kasutamist. Teiseks peetakse nende kahe k\u00e4su reaalajas k\u00e4itamist PHP-skriptides ebaefektiivseks ja aegan\u00f5udvaks (CPU).<\/p>\n<p>\u00d5ige\/soovitatav viis sellise teabe hankimiseks on j\u00e4rgmine: Esiteks loo <a href=\"https:\/\/helloacm.com\/crontab-generator\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">crontab<\/a>, mis t\u00f6\u00f6tab teatud ajavahemike j\u00e4rel, nt iga 2 minuti j\u00e4rel serveris, kasutades <strong>crontab -e<\/strong> saad t\u00f6id redigeerida oma lemmiktekstiredaktoriga, n\u00e4iteks nagu <strong>nano<\/strong> v\u00f5i <strong>vim<\/strong>.<\/p>\n<pre><code>*\/2 * * * * \/usr\/bin\/uptime &gt; $HOME\/htdocs\/uptime.txt<\/code><\/pre>\n<p>Seega iga 2 minuti j\u00e4rel (eemaldage \/2 iga minuti kohta) uuendatakse faili <strong>uptime.txt ja see asetatakse avalikku HTTP-kausta.<\/strong> Seega saate selliste andmete saamiseks kasutada j\u00e4rgmist PHP-skripti.<\/p>\n<pre><code>$uptime = file_get_contents('&lt;a class=\"vglnk\" target=\"_blank\" href=\"http:\/\/'.$_SERVER['SERVER_NAME'].'\/uptime.txt\" rel=\"nofollow\"&gt;&lt;span&gt;http&lt;\/span&gt;&lt;span&gt;:\/\/'.$_&lt;\/span&gt;&lt;span&gt;SERVER&lt;\/span&gt;&lt;span&gt;['&lt;\/span&gt;&lt;span&gt;SERVER&lt;\/span&gt;&lt;span&gt;_&lt;\/span&gt;&lt;span&gt;NAME&lt;\/span&gt;&lt;span&gt;'].'\/&lt;\/span&gt;&lt;span&gt;uptime&lt;\/span&gt;&lt;span&gt;.&lt;\/span&gt;&lt;span&gt;txt&lt;\/span&gt;&lt;\/a&gt;');\nif ($uptime) {\n\u00a0 echo $uptime;\n}<\/code><\/pre>\n<p>K\u00f5lab \u00fcsna lihtsalt, eks? See annab teile suhteliselt t\u00e4pse t\u00f6\u00f6aja oleku ja v\u00f5ite selle teabe panna WordPressi ajaveebi <strong>jalusesse.php<\/strong> (n\u00e4iteks kerige lehe l\u00f5puni).<\/p>\n<p>V\u00f5ite kasutada ka serveri muutujat <strong>DOCUMENT_ROOT<\/strong>, mis esindab veebisaidi juurkataloogi. Seega veenduge, et <strong>fail uptime.txt<\/strong> asub veebisaidi juurkataloogis.<\/p>\n<pre><code>$uptime = '';\n$uptimefile = $_SERVER['DOCUMENT_ROOT']. '\/uptime.txt';\nif (is_file($uptimefile)) {\n\u00a0 \u00a0 $uptime = @file_get_contents($uptimefile);\n} \u00a0<\/code><\/pre>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/helloacm.com\" class=\"external external_icon\">helloacm.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Serveri oleku t\u00f6\u00f6aja kuvamine veebilehtedel PHP ja Crontabi abil<\/p>\n","protected":false},"author":1,"featured_media":223885,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[718,894,842,802],"tags":[1165],"class_list":["post-232154","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arendaja","category-kood","category-opetused","category-php-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/232154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=232154"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/232154\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/223885"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=232154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=232154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=232154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}