J'ai lu de nombreux tutoriels et exemples sur popstate et pushstate et j'ai suivi de près l'exemple des docteurs HTML5 à l'adresse suivante http://html5doctor.com/demos/history/ . Le tutoriel fonctionne très bien, et tout se passe bien lorsque je l'essaie par moi-même. Mais, par exemple, après avoir cliqué sur quelques liens et décidé de rafraîchir la page, je reçois une page non trouvée. Y a-t-il d'autres éléments dans le tutoriel, comme d'autres dossiers existant ailleurs avec d'autres fichiers ? En fait, ce que j'ai fait, c'est copier la source exacte à partir du lien du tutoriel ci-dessus, et la mettre sur mon serveur local. Comme je l'ai dit, tout fonctionne bien avec les boutons "back" et "forward" du navigateur, ainsi que les boutons "pop" et "push", mais l'actualisation de la page tente de charger une page qui n'existe pas. J'ai lu quelque part qu'il fallait modifier le fichier htaccess pour rediriger vers l'index si la page n'existe pas, mais cela n'a pas fonctionné pour moi. Je ne sais pas si j'ai besoin de plus pour que ça marche tout seul, mais j'ai besoin de plus. Le code que j'utilise est exactement le même que celui des tutoriels, donc tout peut être trouvé dans la source.
http://html5doctor.com/demos/history/
htaccess se présente comme suit
Options +FollowSymLinks
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !index
RewriteRule (.*) index.html [L]
</ifModule>