2009-10-28 5 views
1

Dans mon site en direct j'ai php include() et require() qui ont un chemin complet tel que: /www/mysite.com/webapps/mmh/head.php ou /www/mysite.com /webapps/ROOT/zip/BoundaryWizard.phpphp include chemin virtuel

Maintenant, je veux faire un développement local sur ma machine Windows (Xampp), donc évidemment, aucun de ces chemins ne marche.

Existe-t-il un moyen de modifier les paramètres apache ou php pour traduire dynamiquement /www/mysite.com/webapps/mmh/ c: \ xamp \ mysite \ some_other_arbitrary_folder?

Je suppose que la meilleure façon serait d'avoir utilisé des chemins relatifs est la première place, mais c'est le code existant, peut prendre un certain temps pour fixer ...

+3

Ce n'est pas une réponse, mais dans le futur, pensez à définir une constante ROOT_PATH pour éviter ce genre de problèmes. –

Répondre

0

Vous devez définir() le chemin d'accès de votre application, puis utiliser rechercher et remplacer dans un éditeur de texte, la plupart des éditeurs ont cette fonctionnalité.

+0

Cela signifie que le code exécuté dans l'environnement de développement ne peut pas être exécuté dans un environnement de production, ou de test, etc., non modifié. Mieux vaut garder votre code fonctionnel dans chaque environnement et utiliser un seul fichier de configuration pour mettre ces paramètres, ainsi que des choses comme les paramètres de connexion à la base de données, etc. – Kwebble

0

Si vous ne voulez pas changer votre code puis créez ces répertoires.

Vous avez des problèmes si vous devez changer d'hôte, donc je vous recommande de changer le code.

0

Je penserais qu'une recherche/remplacement ne ferait pas trop mal dans ce cas, car ce n'est pas difficile.

L'autre chose que vous pouvez faire est de déplacer votre DocumentRoot afin qu'il soit dans C: \ www \ mysite.com ...

0

est peut-être pas la meilleure solution, mais une solution pas si intelligent vous pouvez utiliser un lien sim (je ne sais pas comment il s'appelle dans les systèmes Windows, peut-être juste des liens?).

2

La bonne réponse ici (désolé) est que vous devriez la réparer. Avoir un fichier commun où vous déclarez une variable/contanst qui est utilisée pour spécifier le chemin.

Allez, ce n'est pas que dur. sed ou tout semi-bon IDE fera une modification d'une chaîne sur un tas de fichiers une tâche facile.