Другими словами не работает такое понимание что в хистори у вас типа стек и вы можете им манипулировать. Бэки и форварды это седьмая вода на киселе. Они были до пушнины и как там браузеры пришили что было к тому что стало - никто толком не знает. Во всех мануалах пишут одно и то же - явное управление адресом.
В другом месте на онпопстейте висит вызов того же самого загрузчика
onpopstate=function(e){
get_page(e.state.url,false);
},
Все, больше вариантов нет. Или вы загружаете следующий ресурс по тому же аяксу и продолжаете прикидываться шлангом в урле, или вы перезагружаете страницу на тот урл, с которого все началось. При этом если юзер нажмет F5 когда у вас левый урл - то же самое должно загрузиться как обычно.
То есть смысл в том, что кнопки Back Forward нажимает юзер, а из кодов вы всегда задаете конкретный адрес.