no, ya que header(); puede ser usado solo cuando aun no se ha enviado contenido al cliente (navegador)... al hacer un echo ya estas enviando HTML, asi que ya no puedes usar header();...
en su defecto tienes javascript
:
Código PHP:
<?
if (!ereg('index.php',$_SERVER['REQUEST_URI'])){
echo '<script>';
echo 'alert(\'Quien concha te pensas q sos para meterte por aca?\');';
echo 'location.replace(\'pagina_a_redirigir.php\');';
echo '</script>';
exit();
}
?>
o con cabeceras html
Código PHP:
<?
if (!ereg('index.php',$_SERVER['REQUEST_URI'])){
echo '<html><head>';
echo '<META HTTP-EQUIV=Refresh CONTENT="10; URL=http://www.htmlhelp.com/">';
// donde 10 es el tiempo en segundos a esperar para que redirija
echo '</head>';
echo '<body>';
echo 'Quien concha te pensas q sos para meterte por aca?';
echo '</body></html>';
exit();
}
?>
Salu2