2009-10-28 193 views
1

在我的生活网站我有PHP的包括()和要求()有完整的路径,如: /www/mysite.com/webapps/mmh/head.php或/www/mysite.com /webapps/ROOT/zip/BoundaryWizard.phpphp包括虚拟路径

现在,我想在我的Windows计算机(Xampp)上进行一些本地开发,所以显然没有任何这些路径工作。

有没有一种方法来调整Apache或PHP设置来动态地将/www/mysite.com/webapps/mmh/转换为c:\ xamp \ mysite \ some_other_arbitrary_folder?

我假设最好的办法是有使用相对路径才是第一位的,但是这是遗留代码,可能需要一段时间才能修复...

+3

不是答案,但在将来考虑定义一个ROOT_PATH常量以避免这些类型的问题。 – 2009-10-28 19:06:34

回答

0

您应该定义()您的应用程序路径,然后在文本编辑器中使用查找和替换,大多数编辑器都具有该功能。

+0

这意味着在开发环境中运行的代码不能在生产或测试等环境中未经修改地运行。最好让代码在每个环境中工作,并使用单个配置文件来放置这些设置,以及诸如数据库连接参数等。 – Kwebble 2009-10-28 22:14:53

0

如果你不想改变你的代码然后创建这些目录。

如果您必须切换主机,您遇到了麻烦,所以建议您更改代码。

0

我认为在这种情况下搜索/替换不会太多伤害,因为这并不困难。

你可以做的另一件事是将你的DocumentRoot,这样它在C:\ WWW \ mysite.com ...

0

也许不是最好的解决方案,但对于一个不那么聪明的解决方案 可以使用一个simlink(我不知道它是如何在Windows系统中调用的,也许只是链接?)。

2

这里的正确答案(对不起)是你应该修复它。在声明变量/ contanst时使用通用文件,该变量用于指定路径。

来吧,它不是硬。 sed或任何半良好的IDE将使一堆文件上的字符串变成一件容易的事情。