运行 Mac OS X 10.5.8,预装 PHP 5.2.11。使用 Coda 1.6.10。
我正在编写 PHP 文件,然后预览它们从文件而不是服务器运行。在我尝试 PHP 包含之前,这一切正常。这些不能作为相对路径,只能作为驱动器根目录的绝对路径。
有什么办法可以使用类似的语句
include_once "common/header.php";
没有像这样指定我的整个文件路径:
include_once "/Volumes/Macintosh HD/Users/neil/Desktop/Website/ColoredLists_v1.0/common/base.php";
,其中 ColoredLists_v1.0 是其中包含所有网站文件的目录。我尝试了将 _SERVER[DOCUMENT_ROOT] 或 dirname( File ) 附加到文件路径之类的解决方案,但这不起作用,因为未设置变量。有什么简单的方法可以做到这一点,或者我可以更改配置,使其默认查看特定目录而不是查看驱动器根目录?目前, echo_include_path 显示 .:
当我在脚本开头包含这一行时,它可以工作:
set_include_path('/Volumes/Macintosh HD/Users/neil/Desktop/Website/ColoredLists_v1.0');
但是,如果我想对我的所有脚本都这样做,我似乎无法使更改永久化。即使我在 php.ini 中编辑了 Unix include_path,它似乎也不起作用。
更新:我最终决定最简单的方法是在本地运行 Apache 服务器。它预装了Mac,所以在那里没有遇到太多麻烦。我修改了 httpd.conf 以仅允许来自本地主机的连接,从而减轻了我的安全担忧。当然,这仍然打开了 80 端口,但我在路由器后面,所以我希望我不是很暴露。Coda 在“站点”中包含一个很棒的功能,我可以在其中设置本地 url,因此它现在运行良好。唯一的缺点是,现在,在代码编辑之后,我需要手动刷新预览。