Cuando desarrollamos aplicaciones Web, una de las ventajas que ahora tenemos es de utilizar Ajax para ciertas secciones donde es conveniente, y también es necesario restringir peticiones que no sean tipo XMLHttpRequest.
Para filtrar solo peticiones Ajax bastara con colocar este simple script.
if(isAjax()){ die('Es una peticion Ajax.'); }else{ die('Acceso denegado!'); } function isAjax(){ $xhr = strtolower($_SERVER['HTTP_X_REQUESTED_WITH']); if( !empty($xhr) && $xhr == 'xmlhttprequest'){ return true; }else{ return false; } }
Nota: algunos servidores Web no proporcionan esta variable, de modo que tendrás que probar antes de implementarlo.