¿Cómo evito que mis usuarios accedan directamente a páginas destinadas solo para llamadas ajax?Impedir el acceso directo a una página PHP
Pasar una tecla durante la llamada ajax parece una solución, mientras que el acceso sin la clave no se procesará. Pero también es fácil fabricar la llave, ¿no? Curse of View Source ...
p/s: Uso de Apache como servidor web.
EDITAR: Para responder por qué, tengo jQuery ui-tabs en mi index.php, y dentro de esas pestañas hay formularios con scripts, que no funcionarán si se accede directamente. Por qué un usuario querría hacer eso, no sé, me imagino que sería más amigable al evitar el acceso directo a formularios sin scripts de validación.
No se preocupe por la facilidad de uso del usuario en este caso. De hecho, diría que es mejor que fracases antes de lo posible para que sea agradable. Por ejemplo, supongamos que lo redirige a index.php para visitas que no son AJAX. Resultado: alguien tiene la garantía de marcar la secuencia de comandos AJAX, ya que los lleva a su página de inicio. –
Las cookies también pueden ser falsificadas – AlBeebe