Amíg a régi blog és az új weboldal közti átmeneti időszak tartott, addig a razide.hu címoldalára kitettem egy tájékoztató szöveget, hogy türelem, tornaterem (a szokásos under construction szöveg), az aljára pedig egy képet, ami attól függően változott, hogy az itthoni, webszervernek kialakított laptopon futott-e az Apache vagy nem. Erre összetákoltam némi guglis segítséggel a következő scriptet:
<?php
$image = "http://razide.homelinux.com/serverrun.jpg";
if (url_exists('http://dama.homelinux.com')) {
echo "<a href=\"http://razide.homelinux.com\" target=\"_top\"><img src="/.$image." /></a> ";
} else {
echo "<img src=\"http://razide.hu/serverclosed.jpg\" />";
}
function url_exists($url) {
$hdrs = @get_headers($url);
return is_array($hdrs) ? preg_match('/^HTTP\\/\\d+\\.\\d+\\s+2\\d\\d\\s+.*$/',$hdrs[0]) : false;
}
?>
A script lényege az url_exists függvény, ami megvizsgálja, hogy a paraméterként megadott url visszatér-e http headerrel, vagy sem. Ennek megfelelően egy feltételrendszer vagy az egyik képet adja vissza linkesítve, vagy a másikat link nélkül.
Amíg a saját gépemen futtattam, addig mindenféle oldal létét lehetett vele vizsgálni, ám amikor áttettem a Domaincenter által biztosított tárhelyemre, onnantól mindig offline-t mutatott, akkor is, amikor nem kellett volna. Megértem, kevés helyen kockáztatják a PHP külső kapcsolódási lehetőségét (php.ini-ben a safe_mode vagy az open_basedir lekorlátozva). Nem egy tárhelyre vagyok bejáratos, és végül találtam egy Nextárhelyes oldalt, amin már rendes értékeket adott vissza a script. Innentől már csak az volt a feladatom, hogy a razide.hu-n az index.php-ben kicseréljem a scriptet egy iframe-es meghívásra:
<iframe src ="http://www.onellatas.info/light/serverrun.php" width="215px" height="215px"
frameborder="0" scrolling="no">
<p>A böngésződ nem támogatja az iframe-eket.</p>
</iframe>
Ha a php csak sima képet állított volna elő, azt könnyebben meg lehetett volna hívni, de itt szerverállapottól függően vagy link, vagy nem, tehát rendes html tartalmat kellett beágyazni.
Ilyen egyszerű feladaton is mennyit kellett törpölni!
| < Előző | Következő > |
|---|
Okosan keress!
Utolsó kommentek
|


Címlap RSS