8
votes

Comment puis-je envoyer phpsessid dans l'URL?

J'essaie d'envoyer le phpsessid via une variable HTTP GET pour un client sans cookie.

J'ai vu cela dans diverses implémentations drupes où ? phpsessionid = 123ABC est ajouté à chaque lien, mais comment puis-je spécifier cela dans PHP et y a-t-il un moyen de modifier le paramètre d'obtention pour qu'il soit pourrait être? Token = 123ABC, voire envoyé via Post HTTP?

pile de lampe standard, exécutant le cadre Zend.

Merci!


2 commentaires

Vous ne devriez pas mettre l'identifiant de la session dans obtenir des variables, c'est un risque de sécurité. Il n'y a pas de navigateur pertinent qui ne supporte pas les cookies.


Stefanw - Il est spécifiquement pour un client moins cookie, comme indiqué.


4 Réponses :


2
votes

Vous pouvez modifier phpsessid en utilisant session_name () ou session. Nom dans votre fichier php.ini (ou en utilisant ini_set () ).

Pour les clients de la Cookieless, il y a l'option session.trans_sid php.ini - Vous devez savoir que cela peut causer des problèmes - par exemple, les utilisateurs transmettent des URL avec des identifiants de session dans l'autre, ou des moteurs de recherche ramasser de telles URL.


0 commentaires

10
votes

Utiliser un cookie ou non est configuré par ces options PHP:

  • session.use_cookies
  • session.only_cookies

    Si le premier est défini, les cookies seront utilisés si possible.
    PHP doit détecter si des cookies sont activés ou non, et ne les utilisez que si elles sont prises en charge par le client.


    Pour activer le passage de l'ID de session par obtenir au lieu de cookies, vous devrez peut-être activer session.utilisateur_trans_sid , qui est désactivé par défaut (ce qui signifie que, par DÉLAUT, ID de session n'est adopté que par les cookies - jamais par get) . < / p>

    Mais notez que, avec cette option activée, PHP passera au moins l'ID de session en obtenant au moins pour la première page que chaque utilisateur de votre site viendra ... car ils n'auront pas le cookie au début, et le Seule moyen de vérifier si elles prennent en charge les cookies en la définissant et en essayant de le lire à la page suivante.
    et les utilisateurs qui ne soutiennent pas les cookies, y compris les moteurs de recherche que je dirais probablement, auront cet identifiant de session - et ce n'est pas bien: - (


    Et, vous voudrez peut-être aussi consulter session.name Pour définir le nom de la clé (régler sur "Jeton" au lieu de "phpsessid", je veux dire)


    Pour plus de détails, vous pouvez consulter le
    manutention de la session section du manuel : -)


0 commentaires

2
votes

le faire manuellement: xxx


0 commentaires

0
votes
  1. Créer une page de connexion, l'utilisateur ne doit pas se connecter sans identifiant et mot de passe correct.
  2. Après la connexion de l'utilisateur, l'utilisateur peut se déconnecter et retourne à la page de connexion.
  3. L'utilisateur ne doit pas accéder à la page d'accueil sans traverser la page de connexion.

0 commentaires