Bonjour WinXaito,
C'est pas simple. Je vais essayer de t'aider en te proposant deux solutions, mais je ne l'ai jamais fait.
Première solution
Le mécanisme des sessions fonctionne avec un cookie. Le site dépose un cookie sur le navigateur en spécifiant le domaine, le chemin et la durée. De son côté, le serveur conserve les données de session associés à ce cookie. Lorsque le visiteur revient sur ce domaine, il réémet le cookie afin que le serveur puisse recharger les données de session associées.
Par exemple, les sessions de PHP utilisent un cookie appelé "PHPSESSID".
La fonction setcookie() de PHP permet de définir la durée et le domaine associé à un cookie.
Il est donc possible de faire redéfinir le domaine comme ceci :
| setcookie('PHPSESSID', $_COOKIE['PHPSESSID'], time()+3600, '/', 'www.domaine2.xy');
|
Ainsi, lorsque le visiteur ira sur l'autre domaine, il pourra réémettre le cookie afin de permettre son identification.
Maintenant, tout la difficulté consiste à recharger les données de session. Si les deux domaines font référence au même serveur physique, je suppose que ces données sont rechargées automatiquement par la fonction session_start(). S'il s'agit de deux serveurs différents, la manipulation risque d'être plus compliquée car tu devras faire un transfert des données de session d'un serveur à l'autre.
Deuxième solution
Si cela ne fonctionne pas, tu peux recréer le principe des sessions par toi même en utilisant ton propre cookie portant pour valeur le nom d'un fichier texte comportant les données de session du visiteur. Lorsque le visiteur ira sur ton deuxième site, s'il te réémet ton cookie est tu n'as pas le fichier texte comportant les données de session, tu peux télécharger avec PHP le fichier de sessions depuis le premier serveur et ainsi reconstruire ta session.
Cette méthode devrait passer par un chiffrement pour éviter l'utilisation des données de session par un personne malintentionnée. Tu peux aussi filtrer l'autorisation du fichier selon l'IP.
Mon aide n'est sans doute pas des plus précieuses, c'est un sujet que je ne maitrise pas bien.
Un fichier unique pour deux sites
Là encore, il faut passer par un téléchargement si le fichier d'origine est susceptible de changer. Pour éviter l'interprétation de fichier, tu peux créer un script PHP qui vient lire le contenu de ton fichier à télécharger et l'affiche dans une page. Ainsi tu pourras le télécharger. Là encore il faut passer par un chiffrement et un filtrage par IP.
Mon avis dans tout ça
Dans tout cela, j'y vois beaucoup de dépendances. Or, plus un système a besoin de sous-système pour fonctionner, plus il a de risque de tomber en panne à la moindre défaillance de l'un de ses sous-systèmes.
Dans la résolution de ton premier problème, je pense qu'il serait plus judicieux, si c'est le même site, de mettre toutes tes pages sous le même domaine.
Et pour ce qui est de ton second problème, je pense qu'il est préférable, si c'est possible, de laisser ces deux fichiers totalement indépendant l'un de l'autre, même s'il sont identique. D’autant plus que si c'est un include, il ne devrait pas être modifié souvent.
N’aurais-tu pas tout intérêt à héberger tout cela sous le même domaine ?