欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > php >内容正文

php

thttpd+php 不加载php.ini 问题

发布时间:2025/6/16 php 71 豆豆
生活随笔 收集整理的这篇文章主要介绍了 thttpd+php 不加载php.ini 问题 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

昨天安装了thttpd+php,改PHP报错参数,于是修改了php.ini,重启了thttpd,没有生效,然后看phpinfo(),Loaded Configuration File 项是 (none),然后编译加上参数 –with-config-file-path= 指定一个位置,重新编译完thttpd 和 php后,启动 thttpd 依然是这样,后来看PHP 官方顿时明白了,php作为thttpd的模块需要修创建环境变量,官方如下:
php.ini 的搜索路径如下(按顺序):
* SAPI 模块所指定的位置(Apache 2 中的 PHPIniDir 指令,CGI 和 CLI 中的 -c 命令行选项,NSAPI 中的 php_ini 参数,THTTPD 中的 PHP_INI_PATH 环境变量
*HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath(Windows 注册表位置)
*PHPRC 环境变量
*当前工作目录(对于 CLI)
*web 服务器目录(对于 SAPI 模块)或 PHP 所在目录(Windows 下其它情况)
*Windows 目录(C:\windows 或 C:\winnt),或 –with-config-file-path 编译时选项指定的位置
修改后,居然还是不行·弄来弄去是因为 thttpd 的安全 chroot的路径问题·我没有用到 chroot 所以直接修改配置文件把 chroot 改为 nochroot.

归纳:
想让 thttpd + php支持 php.ini 必须这两步

1.增加环境变量

thttpd $> PHP_INI_PATH=/usr/local/php/etc thttpd $> export PHP_INI_PATH

2.修改配置文件

thttpd $> vim /usr/local/thttpd/etc/thttpd.conf port=80 user=www nochroot host=0.0.0.0 logfile=/usr/local/thttpd/logs/thttpd.log pidfile=/usr/local/thttpd/logs/thttpd.pid throttles=/usr/local/thttpd/etc/throttle.conf urlpat=*.txt|*.mp3 charset=utf-8 dir=/var/www cgipat=/usr/local/thttpd/www/cgi-bin/*

我现在觉得可以把thttpd做为下载站来用,限速和防盗链的功能都不错,限速的功能在 nginx之上·

这里千万别有些不明真相的人拍砖,nginx限速功能还不是那么强大·不能针对目录,如果针对某个目录限速需要创建虚拟主机。

本人也是nginx的粉丝·当然thttpd在并发上,性能上还敢不上nginx。 PS:最后一句是我跟人感觉,没有亲自实验说出的话~



本文转自Deidara 51CTO博客,原文链接:http://blog.51cto.com/deidara/411904,如需转载请自行联系原作者

总结

以上是生活随笔为你收集整理的thttpd+php 不加载php.ini 问题的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。