1

.user.ini使用内置 Web 服务器时如何加载PHP 配置文件?

我的设置是这样的:

site
│   include.php
│
├───bin
│       router.php
│       server.bat
│
└───public
        .user.ini
        index.php

文档根目录是public,如果文件不存在则bin\router.php路由到。public\index.php

我做了一个phpinfo(), 来验证.user.ini没有被加载。我要更改的设置是error_log.

4

2 回答 2

2

Petah,我刚刚从您的评论中发现了问题所在。内置 webserver 仅在 5.4 中引入

此 Web 服务器仅用于开发目的,不应在生产中使用。

它充当监听指定套接字的网络服务器。.user.ini声明

这些文件由 CGI/FastCGI SAPI 处理。此功能淘汰了 PECL htscanner 扩展。如果您使用的是 Apache,请使用 .htaccess 文件以获得相同的效果。

换句话说,您不能将 .user.ini 文件与内置网络服务器或 Apache/mod_php 等一起使用。您必须使用自定义 php.ini。最安全的方法是克隆默认的 php.ini(或 Apache/mod_php 的 php_value/flag 指令),然后添加您想要开发的行。当然,您也可以随时在脚本启动中添加一个 ini_set 命令。

于 2012-06-15T10:11:19.983 回答
1

虽然不是我问题的确切答案,但我找到了解决问题的方法。

server.bat我正在使用的文件中运行 php 服务器

php -S 0.0.0.0:3000 -t public bin/router.php

通过将其更改为:

php -c public/.user.ini -S 0.0.0.0:3000 -t public bin/router.php

达到了同样的效果。

于 2012-06-14T06:57:57.147 回答