<?php
/* Faça um arquivo chamado ".htaccess" (sem aspas) e coloque as seguintes duas linhas:
ErrorDocument 404 /404.err
AddType application/x-httpd-php err
   colocou? agora salve ESTE arquivo como 404.err
   a extensão modificada é apenas para dificultar o acesso a este arquivo, que realmente existe */
$request = stripslashes(htmlspecialchars($_SERVER['REDIRECT_URL'])); // pego o endereço da página inexistente
$request = explode("/", $request); // separo em arrays pelas barras
$request = $request[1]; // pego somente o que está após o domínio do site
$verifica = strpos($request, "."); // vejo se há pontos, para retirar a extensão
if(!$verifica==false) { // se houver pontos no nome do arquivo
 $request = explode(".", $request); // separo em arrays pelos pontos
 $request = $request[0]; // pego somente o anterior ao primeiro ponto
}
$file = "artigos/".$request.".php"; // vejo como ficaria o nome do arquivo
if(file_exists($file)) { // se o arquivo existir 
 header("Location: {$file}"); // redireciona para o arquivo
} else { // senão
 header("Location: busca.php?q={$request}") // faço a busca
}
?>