2009-06-16 8 views
0

Nous avons développé une application mobile utilisant le framework PHP CodeIgniter. App a été testé sur plusieurs téléphones matériels et émulateurs. Tout fonctionne bien partout - sauf le navigateur intégré Nokia S40. Lors de la navigation via thatbrowser, il révèle que $ _SERVER ['HTTP_REFERER'] n'est pas défini - même en utilisant PHP directement sans frameworks. Plus précisément, l'application a été testée sur Nokia 3500 Classic et 6300. En outre, lorsque vous utilisez Opera Mini sur les mêmes téléphones, tout a fonctionné comme un charme. Le serveur est Apache2 avec PHP5, CodeIgniter 1.7, mais je ne pense pas que ce soit un problème de framework.Nokia HTTP_REFERER problème

Chose étrange, il semble que seulement quelques personnes dans le monde ont, ou mentionné, ce problème, sans réponse. Eh bien, la question est - est-ce que nous manquons quelque chose? Est-ce que le navigateur intégré du Nokia S40 supprime vraiment HTTP_REFERER, ou est-ce un problème de serveur? Que pourrait-on faire pour le réparer ou l'atténuer?

Répondre

3

Les référents ne doivent être envoyés par aucun navigateur. Ne construisez rien en supposant que vous les obtiendrez à partir d'un navigateur; il y a d'autres choses qui peuvent bloquer leur apparence (plugins de navigateur, logiciels de sécurité, etc.)

0

Pour que HTTP_REFERER existe, il faut un en-tête HTTP_REFERER . Cet en-tête n'existe pas si quelqu'un tape directement l'URL (ie: ne suit pas un lien vers la page). Il n'existe que lorsque quelqu'un clique sur un lien d'une autre page. Et, certains navigateurs ne les envoient pas.

0

Oui, HTTP_REFERER correspond aux en-têtes http optional. Certains opérateurs, ou ses transcodeurs (proxy), suppriment l'en-tête HTTP_REFERER.

Questions connexes