关于在windows上的wamp集成环境和xampp上安装mongo扩展
今天来学习下mongodb,在装PHP扩展的时候本来是一个很轻松的事情,结果并不是我想想的那么简单。
我的集成环境是xampp的php版本是5.6的x86.我开启了安全模式,所以我需要mongo时ts的安全模式扩展的x86扩展这些都不是很复杂。但是当我将下载好的扩展放入ext目录下后在php.ini中开启扩展后。重启apache竟然在phpinfo里面找到mongo的扩展信息、
经过自己的反复排除,无果。主要是apache的错误log竟然不报错误。php.ini中开启mongo不管有没有都不会报错。无奈之下我又测试了下wamp环境。也是如此;今天到公司里面找到我们技术老大。竟然分分钟给我搞定了。我除啦在用崇拜的眼光盯着我们老大外。还有一些对自己的思考。这就是差距。相同的时间里人家可以做很多事情。并不是人家偷懒是因为我们都拖累了他们。哎!
解决的方法。是环境变量。我在环境变量PATH中加入了D:/xampp/php/ext/;D:/xampp/php/;
这里付上我的下载链接:
https://www.mongodb.org/downloads
选择扩展的版本需要注意的是 你1.当前php的版本 2.以及你的phpinfo()中Thread Safety 的设置enabled(开启)选择 ts版本的 disabled(关闭)选择nts版本的 3.查看你的环境是32位的装x86;64位的装x86_64的。
将扩展重命名php_mongo.dll 放入到php/ext 目录下 并在php.ini文件中开启extension=php_mongo.dll .重启apache 查看 phpinfo() 中是否有。
OK本来是一个愉快的礼拜天,由于这个小小的问题。党务了很多事情。也验证了一句话, 理论和做东西是两码事。
承接上文,在安装的时候还遇到一个疑惑的问题,那就是mongo有两个php扩展。一个是php_mongodb.dll 和php_mongo.dll。以前这个两个扩展是区分的,在php的在线手册里面可以看到数据库扩展里面mongo占用了两个选项 一个是mongo 另一个就是mongodb官方的解释是 mongo用来做扩展的数据处理函数。mongodb是用来做mongo的debug用的。也就是调试工具用的。但显得最新的版本已经找不到关于mongodb的扩展了。我猜测是已经将mongo的debug函数合并到了mongo.dll扩展里面去了。但是php为了更好的兼容性。在php.ini文件中只要你的扩展版本与php的符合 那么php还是支持mongodb的扩展的。而在新的php5.6.16中已经将这两个合并了。优先解析php.ini文件中的 mongo.dll扩展。如果没有那么也会解析mongodb.dll的扩展。但是在phpinfo()的页面已经看不见关于mongodb的扩展了。只会显示mongo 。换句话说就是无论是mongo.dll还是mongodb.dll都会显示为mongo但优先考虑mongo.dll。


研究终于明朗了。其实作为程序猿来说,不需要细究这些问题。但由于本人以前是做运维出身,对于这些问题还是喜欢追究下。纯属扯淡。
关于在windows上的wamp集成环境和xampp上安装mongo扩展的更多相关文章
- php Windows系统 wamp集成环境下redis的使用
先说一下我的本地环境,使用的是wamp集成环境,(Apache 2.4.9.PHP 5.5.12.MySQL 5.6.17) windows下安装PHP扩展: 第一步:找到扩展文件(.dll),htt ...
- WAMP集成环境的安装
暑假已经正式开始,我的学习计划也开始有了初步的进展,今天学习的主要内容是PHP的基础知识,以及在电脑上面安装了集成的WAMP(Windows+Apache+MySQL+PHP). PHP的基础知识: ...
- wamp集成环境 开启rewrite伪静态支持
什么是伪静态 伪静态就是:动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面. 伪静态的目的 最主要的就是迎合搜索引擎方便搜索引擎蜘蛛(Spider) ...
- wamp集成环境开启rewrite伪静态支持
wamp集成环境在安装完后,默认是没有开启伪静态的,所以有时把项目部署进去时如果源码里包含.htaccess文件的话,可能会出现500错误,这一般是因为不支持伪静态造成的,解决这个问题的办法就是开启伪 ...
- WAMP集成环境更改web根目录
使用WAMP集成环境,如何更改web根目录 做php开发使用WAMP集成环境的同学大部分有过这样的经历:如果你试图修改web根目录,那么你肯定会想到要修改apache/apache2.2.11/con ...
- php集成环境和自己配置的区别,php集成环境、php绿色集成环境、php独立安装版环境这三者的区别
最近有学生问我,直接使用PHP集成环境和我们自己独立安装的php环境有什么不一样吗? 答:PHP集成环境,和自己安装的php环境实际上没啥区别的,只不过大部分的集成环境进行了一些绿化操作,本质上没啥区 ...
- 在wamp集成环境下安装laravel5.2.*框架
虽然官方一直强烈推荐使用homestead,但是这个相对麻烦一点,所以我还是选择使用wamp集成开发环境.还有这里我只讲解windows系统下的安装,其他例如mac或linux就不写了,此文章是面向刚 ...
- wamp集成环境下帝国备份出错
我在本地wamp环境下面使用帝国备份王时,报错信息如下: Parse error: syntaxerror, unexpected $end in D:wampwwwhuifuclassfunctio ...
- IntelliJ IDEA for Mac(Java 语言开发的集成环境)破解版安装
1.软件简介 IntelliJ IDEA 是 macOS 系统上一款 java 语言开发的集成环境,IntelliJ 在业界被公认为最好的 java 开发工具之一,尤其在智能代码助手.代码自动提 ...
随机推荐
- 华硕笔记本之secure boot
在ubuntu下安装cuda的时候,一直装不好,cuda-7.5.run已经装好了,但是编译cuda的例程时失败,提示cuda的库链接不上. 初步判断是secure boot的问题,因为在开启X的情况 ...
- HA模式手动切换namenode状态
查看状态 hdfs haadmin -getServiceState nn1 有时候通过网页访问两个namenode的http-address,看到默认的主namenode状态变成了standy,这时 ...
- jquery插件-表单验证插件
JQuery 插件概述: 插件(plugin)也被成为扩展,是一种遵循一定规范的应用程序编写出来的程序,JQuery有大量 现成的插件. 一句话,JQuery插件就是别人依照Jquery官方规范写好的 ...
- spoj1811 Longest Common Substring
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- [iOS OpenCV错误解决]
(编译使用O-C会出现错误:<list> not found) (未添加系统库会出现的错误:undefined symbols for architecture armv7) iOS工程调 ...
- UVa 437 The Tower of Babylon(经典动态规划)
传送门 Description Perhaps you have heard of the legend of the Tower of Babylon. Nowadays many details ...
- POJ 2528 Mayor's posters(线段树/区间更新 离散化)
题目链接: 传送门 Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Description The citizens of By ...
- vc++ 中 IntelliSense: 无法打开 源 文件 "xxx.h"
类似无法找到文件的问题都可以用这个方法解决,就是路径的问题.vc++2008的项目转到vc++2010也可能出现类似的问题. 解决方法: 在 项目属性=>配置属性=>C/C++ =&g ...
- hdu 2042 - 不容易系列之二
题意:(略)太长了 解法:找规律,发现A[i]=A[i-1]*2-2; 1: #include<stdlib.h> 2: #include<string.h> 3: #incl ...
- primefaces 上传文件尺寸受限制 Connection terminated as request was larger than
standalone.xml like this: <http-listener name="default" socket-binding="http" ...