Как вы уже знаете технология AJAX как минимум задействует трех участников - клиентский код, браузер и серверный код. Как правило код клиентской части пишется на JavaScrip (собственно говоря AJAX - Asynchronous JavaScript And XML), а как известно в целях безопасности JavaScript ограничен в доступе к файлам. Вот тут и начинаются танцы с бубном. Хотя XMLHttpRequest level 2 обещает решить многие проблемы, но пока приходится работать по старому.
Одним из способов является использование flesh в качестве посредника.