我在我的 Mac 上运行多个 PHP 应用程序,运行 OS X 10.5.6、Apache 2、PHP 5。我为每个项目设置了子域,为每个子域设置了一个主机文件条目,并在 Apache 配置中设置了虚拟目录 block .所以
project1.localhost 转到/Library/WebServer/Documents/Project1
project2.localhost 转到/Library/WebServer/Documents/Project2
等等……
但是,此方法并不能真正“隔离”网络应用程序。例如,如果我包含这样的脚本:
<?php
include("/includes/include.php");
?>
它引用了我计算机基本目录中的脚本。所以它访问
C:/includes/include.php
有没有办法让我引用
C:/Library/WebServer/Documents/Project2/includes/include.php
基本上,让它不知道自己目录之外的任何东西。另外,有没有办法在每个子域的基础上使用 php.ini?
最佳答案
我相信可以为每个虚拟主机设置一个 php.ini
<VirtualHost *:80>
...
PHPINIDir /full/path/to/php/ini/
</VirtualHost>
这样你就可以自定义open_basedir和其他
关于php - 如何将 PHP 应用程序限制在它们自己的目录和它们自己的 php.ini 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/639666/