2012-12-05 2 views
3

Vous ne savez pas ce que je manque, mais j'ai pushState qui fonctionne sur mon application Backbone, où je peux cliquer et faire ressembler mon URL à www.example.com/route_specified, cependant si j'essaie d'y aller directement à cette page, il apparaît comme non trouvé. Si je fais www.example.com/#route_specified cela fonctionne, et retourne rapidement à www.example.com/route_specified sur la barre d'adresseDeeplinking backbonejs avec pushstate

Je suppose que je dois faire quelque chose dans Apache pour gérer cela et m'assurer que tous les appels se résolvent en index ou quelque chose comme ça, mais ne trouvent pas d'explication.

Répondre

1

Correct. Pensez-y de cette façon sans pushstate activé. Votre serveur essaie toujours de diffuser la page sur cet itinéraire. Comme il ne peut pas trouver le document spécifié à cet emplacement, il lance un 404.

D'un point de vue technique, votre serveur devrait quand même produire un résultat à l'emplacement de l'URL, puis prendre le contrôle de Backbone. Dans sa forme la plus simple, cela s'appelle l'amélioration progressive. Le serveur devrait toujours servir une sorte de page statique avec des informations critiques, ce qui permettra d'éliminer les problèmes que vous aurez avec le référencement. Travaillez votre site/application avec JavaScript désactivé, ne servant que les données pertinentes. Ensuite, prenez la reprise Backbone. Je viens de découvrir la refonte de Mashable, et ils intègrent extrêmement bien l'amélioration progressive avec Backbone.

Si le référencement n'est pas un problème, vous pouvez toujours rediriger l'utilisateur vers la page d'index. Rappelez-vous juste que les moteurs de recherche indexeront seulement alors votre page d'application. Si votre contenu est diffusé dynamiquement, il n'y aura pas de données à indexer.

Espérons que cela aide.

Merci

Tyrone