2013-06-25 4 views
0

Disons que j'ai 2 noms de domaine 123.com et abc.com tous sur le même serveur 1and1.123.com se trouve dans un dossier appelé 123 et abc.com se trouve dans un dossier nommé abc.Même fichier sur plusieurs sites

Comment j'inclurais un fichier stocké dans 123 dans une page sur le site abc.com. je faire avec PHP

<?php 
$code = file_get_contents("http://www.123.com/file.html"); 
eval('?>' . $code); 
?> 

mais il a été arrêté avec pour prévenir les abus PHP5.

Fondamentalement, je veux pouvoir éditer un fichier de HTML et le faire changer sur plusieurs sites.

Je pensais que

<?php include($_SERVER["DOCUMENT_ROOT"]/123/file.html); ?> 

le ferait, mais il ne va pas à ma racine du serveur, juste la racine du domaine. Est-il possible d'utiliser php pour obtenir des informations à partir de dossiers frères sur un serveur?

Merci Richard

+0

Est-ce * le même * serveur? Avez-vous accès aux fichiers de l'autre domaine? – deceze

+0

Si les dossiers sont tous sur le même serveur, alors pourquoi ne pas pointer ces dossiers dans chaque site Web au même endroit sur le disque? À moins que ce soit une restriction de l'hébergement, bien sûr. – dash

Répondre

0

Oui, vous voulez la fonction require() ou include() (ou require_once()). Voir http://nl3.php.net/require.

Ceci est également beaucoup plus rapide car il n'y a pas de connexion http en cours d'installation, mais seulement le système de fichiers interne est interrogé.

- EDIT

oh attendez, je vois que vous avez déjà trouvé la fonction include. Je pense que vous devriez utiliser soit des chemins absolus, ou utiliser le « .. » dans le chemin:

include('/full/path/to/the/directory/file.html'); 
include($_SERVER['DOCUMENT_ROOT'] .'../123/file.html'); 
0

Je ne sais pas 1and1 et ce qu'ils vous permettent de faire ... Ce que je propose est un 3ème dossier au même endroit que vos dossiers dmain. Appelez ça commun. Puis, dans chacun de vos domaines dossiers, où il répond mieux à vos besoins, créer un lien symbolique de répertoire dans le dossier commun que nous venons de créer ...

En fait, il le fera: (approximation aveugle absolue du serveur réel)

1and1/your_account/123/common -> 1and1/your_account/common <- 1and1/your_account/abc/common 
0

Vous pouvez également utiliser symlink afin d'ouvrir le fichier à partir des deux répertoires.

Questions connexes