win2003 iis整合php后 环境变量无法读取到
一般情况下,都能实现显示php(做为现在的主流开发语言)info()的页面。就从能够显示该页面之后出现的问题说起
php(做为现在的主流开发语言)的问题都会显示在php(做为现在的主流开发语言)info()页面上
首先查看自己的php(做为现在的主流开发语言).ini的路径是否正确
Q:我已经配置了php(做为现在的主流开发语言).ini文件,但重新启动服务器后为什么没有任何效果?
A:这个问题主要有这几种情况。
第一个原因是由于系统所读取的php(做为现在的主流开发语言).ini文件与你当时修改的php(做为现在的主流开发语言).ini文件不一致造成的
1、 可以通过php(做为现在的主流开发语言)info()的Configuration File (php(做为现在的主流开发语言).ini) Path选项查看当前php(做为现在的主流开发语言)服务器读取的是哪一个php(做为现在的主流开发语言).ini
2、 如果你要更改php(做为现在的主流开发语言).ini的文件存取位置,可参考php(做为现在的主流开发语言).ini的搜索顺序,如下所示:
a) SAPI 模块所指定的位置(apache(Unix平台最流行的WEB服务器平台) 2 中的 php(做为现在的主流开发语言)IniDir 指令,cgi(现在已经不多人在用了) 和 CLI 中的 -c 命令行选项,NSAPI 中的 php(做为现在的主流开发语言)_ini 参数,THTTPD 中的 php(做为现在的主流开发语言)_INI_PATH 环境变量)
b) HKEY_LOCAL_MACHINESOFTWAREphp(做为现在的主流开发语言)IniFilePath(Windows 注册表位置)
c) php(做为现在的主流开发语言)RC 环境变量
d) 当前工作目录(对于 CLI)
e) web 服务器目录(对于 SAPI 模块)或 php(做为现在的主流开发语言) 所在目录(Windows 下其它情况)
f) Windows 目录(C:windows 或 C:winnt),或 --with-config-file-path 编译时选项指定的位置
3、 一般做法:通过设置php(做为现在的主流开发语言)RC 环境变量,
a) 操作:右击我的电脑->属性->高级->环境变量
b) 在系统变量下新建一个“变量名为php(做为现在的主流开发语言)RC ,变量值为你的php(做为现在的主流开发语言).ini文件所地文件路径”的环境变量第二个原因是:php(做为现在的主流开发语言)没有找到相应的扩展库
1、 查看php(做为现在的主流开发语言)找到的扩展库位置:在php(做为现在的主流开发语言)info()的extension_dir选项可以看到
2、 在php(做为现在的主流开发语言).ini更改extension_dir文件第三个原因:没有完全重启iis(微软的WEB服务器平台)
1、 对php(做为现在的主流开发语言).ini的修改必须完全重启iis(微软的WEB服务器平台)才能起作用,而不能只是对当前站点进行重启。
2、 进入cmd,停止服务器:net stop iis(微软的WEB服务器平台)admin;启动服务器:net start w3svc
Q:我的php(做为现在的主流开发语言)怎么没有办法激活MySQL(和PHP搭配之最佳组合)扩展库
A:在php(做为现在的主流开发语言)5.0以上版本,MySQL(和PHP搭配之最佳组合) 默认未启用,因此需要咱们进行手工激活。
1、 在php(做为现在的主流开发语言)运行MySQL(和PHP搭配之最佳组合),必须在 php(做为现在的主流开发语言).ini 中激活 php(做为现在的主流开发语言)_MySQL(和PHP搭配之最佳组合).dll 动态连接库,另外还需要访问 MySQL(和PHP搭配之最佳组合) 客户端连接库即libMySQL(和PHP搭配之最佳组合).dll文件
2、 可以通过php(做为现在的主流开发语言).ini中的extension激活 php(做为现在的主流开发语言)_MySQL(和PHP搭配之最佳组合).dll 动态连接库;而libMySQL(和PHP搭配之最佳组合).dll文件必须放在Windows 的系统路径 PATH才能访问,可以通过把libMySQL(和PHP搭配之最佳组合).dll复制到system32目录下,也可以在PATH环境变量中新增一个路径。
3、 建议做法:通过设置PATH,方便以后的php(做为现在的主流开发语言)升级,在系统环境变量中的PATH后增加“libMySQL(和PHP搭配之最佳组合).dll”所在的文件夹即可。记得通过“;”号隔开
4、 [案例]最近,服务器总是找不到MySQL(和PHP搭配之最佳组合)扩展库,导致程序无法运行。因此,把所有文件删除后重新配置php(做为现在的主流开发语言)服务器。但最后在安装MySQL(和PHP搭配之最佳组合)的时候,却始终无法激活MySQL(和PHP搭配之最佳组合)扩展库。
在php(做为现在的主流开发语言)info()中找到的信息如下:
PATH:c:php(做为现在的主流开发语言)
php(做为现在的主流开发语言)RC:C:php(做为现在的主流开发语言)
extension_dir:c:php(做为现在的主流开发语言)ext
另外,我测试了将其它的库激活,如msql、gd2、xml(标准化越来越近了),在php(做为现在的主流开发语言)info()都可以正常显示
证明php(做为现在的主流开发语言)能找到php(做为现在的主流开发语言)_MySQL(和PHP搭配之最佳组合).dll 动态连接库,而MySQL(和PHP搭配之最佳组合)的运行的另一个条件是能够讯问MySQL(和PHP搭配之最佳组合) 客户端连接库即libMySQL(和PHP搭配之最佳组合).dll文件,看来问题就在这里了。
我对C盘搜索libMySQL(和PHP搭配之最佳组合).dll文件,发现在system32和php(做为现在的主流开发语言)文件夹各有一个文件,做好备份后,我尝试删除system32的libMySQL(和PHP搭配之最佳组合).dll文件,发现被锁死,无法删除,却可以重新命名,我随便修改了名称,再重新启动iis(微软的WEB服务器平台),服务器运行正常。
补充:Web开发 , php ,