【发布时间】:2011-11-25 00:48:01
【问题描述】:
我刚刚购买了用于测试和开发的 VPS 帐户。
PHP 是否有解析 Apache 配置文件、PHP 配置、FTP 服务器配置、区域文件等的功能?也是一种将数据插入配置文件的方法。
我想创建一个简单的控制面板来添加 ftp 帐户和 web 帐户(带域)。如果你以前做过 - 你是怎么做到的?
学习难度很大
谢谢。
【问题讨论】:
-
parse_ini_file()是你要找的函数吗?
我刚刚购买了用于测试和开发的 VPS 帐户。
PHP 是否有解析 Apache 配置文件、PHP 配置、FTP 服务器配置、区域文件等的功能?也是一种将数据插入配置文件的方法。
我想创建一个简单的控制面板来添加 ftp 帐户和 web 帐户(带域)。如果你以前做过 - 你是怎么做到的?
学习难度很大
谢谢。
【问题讨论】:
parse_ini_file()是你要找的函数吗?
不,PHP 没有解析这些程序的配置文件的功能——您必须为大多数这些格式编写自定义解析器。但是,对于 php.ini,您也许可以使用 PHP 的 ini 函数。
大多数虚拟主机控制面板要么根据他们的数据库创建整个配置文件 - 即他们从不读取它,而只是(覆盖)写入它,或者他们要求你包含(apache 和绑定支持,例如,你可以使用 PHP apache virtualhosts 中的 php_admin_value) 他们生成的文件 - 该工具也永远不会读取。
如果您真的想创建一个实际修改现有文件的工具,请不要忘记您不能简单地跳过 cmets,因为没有人希望应用程序重写他的配置文件以剥离所有 cmets。
【讨论】:
您也许可以使用以下 pear 库来解析 apache 配置文件:
http://pear.php.net/manual/en/package.configuration.config.avail-container.apache.php
解析一个 php.ini 文件,这取决于你想要做什么,最好使用 ini_get 来完成
【讨论】:
我不知道这些功能,我非常怀疑它们是否存在,原因很简单,HTTP / FTP / SMTP / ... 服务器实现太多了。 cPanel、WebMin 和 others 等控制面板通常会为您完成繁重的工作,有些甚至提供 API 来自动化 PHP。
对于 PHP 配置,以下函数可能会解决问题:
但请记住,并非所有 PHP 配置指令都可以使用 ini_set() 更改。
【讨论】: