couldn’t connect to server 127.0.0.1 shell/mongo.js:79 (2011-11-20)

 MongoDB启动报错couldn’t connect to server 127.0.0.1 shell/mongo.js:79
解决如下

1.启动 /usr/wangzhen/mongodb-linux-x86_64-2.0.1/bin/mongod
2. rm /data/db/mongod.lock

点击查看原文阅读(244) | 评论(0) | 分类:NoSQL

CentOS环境中安装Node+Express框架 (2011-11-18)

1. 技术准备:

node.js			写本文的时候我采用的版本是0.4.5, Win用户需要自行编译node.exe
npm			类似Ruby中的RubyGems, node.js包依赖管理工具
express			类似Ruby中的Sinatra, 一个简单的Web框架
markdown.js		node.js中的markdown解析器, 什么是markdown?? 用过GitHub的朋友应该知道,readme.md文件
prettify.js		google-code-prettify, 提供在线的语法高亮支持,支持语法包括C-like, Java, Python, shell等大多数语言


2. 安装node.js

先安装gcc-c++编译环境和openssl

yum install gcc-c++ openssl-devel
当前最新版师0.6.2,我装的是0.6.1版本
wget http://nodejs.org/dist/v0.6.2/node-v0.6.2.tar.gz
tar –xvf node-v0.6.2.tar.gz
cd node-v0.6.2
./configure
make
make install

如果在使用./configure时报错:Node.js could not configure a cxx comiler!,解决办法:
yum groupinstall "Development Tools”

node -v测试一下是否安装成功

var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello Node.js\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');

将以上代码存为hello.js,然后使用node hello.js运行,在控制台上按住ctrl键,会出现下划线直接点击。如果打开的网页不能直接浏览,则将上面代码中的127.0.0.1 –> 换成机器的IP地址


3. 安装 npm

$ curl http://npmjs.org/install.sh | sh
如果安装出问题,有可能是nodejs版本过低,安装完成后,
$ npm -v
看看是否安装成功


4.node的express框架

由于这个有点特殊,需要为npm添加-g参数, 刚开始安装的时候没有加,导致不能使用epress 命令行参数 $ npm install -g express $ epxress -v 看看是否安装成功

创建一个express项目看看

$ express nodeblog
$ cd nodeblog

express目录结构

./	        根目录,我们的node.js代码都会方这个目录
package.json	npm依赖配置文件, 类似ruby中的Gemfile, java Maven中的pom.xml文件. 一会需要在这里添加 markdown-js     项目依赖
app.js		项目的入口文件
public/		存放静态资源文件, jquery/prettify.js等静态库会方这里,当然自己编写的前端代码也可以放这里
views/		模板文件, express默认采用jade, 当然,你也可以使用自己喜欢的haml,JES, coffeeKup, jQueryTemplate等模板引擎

运行程序看看

$ npm install $ node app.js 访问http://localhost:3000/ node_modules/ 存放npm安装到本地依赖包,依赖包在package.json文件中声明,使用npm install指令安装

点击查看原文阅读(207) | 评论(0) | 分类:Node.js

EditPlusFTP连接SFTP配置 (2011-11-18)

在这里记录一下Editplus 使用SFTP设置

 1、首先配置LINUX SFTP配置

编辑 sshd_config 文件 (文件所在路径:/etc/ssh/ )
vi /etc/ssh/sshd_config

启用 PasswordAuthentication 项,值由yes 修改为no

以root 权限重启SSH,命令: /etc/init.d/sshd restart

2.设置EditPlus FTP设置,在高级选项中选中使用SFTP


 

 

点击查看原文阅读(181) | 评论(0) | 分类:懒得分类

LInux下MongoDB安装 (2011-11-11)

linux下安装和配置mongodb
步骤一:下载文件

对于32位的linux
$ curl http://downloads.mongodb.org/linux/mongodb-linux-i686-1.4.4.tgz > mongo.tgz
$ tar xzf mongo.tgz

对于64位的linux
$ curl http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.4.4.tgz > mongo.tgz
$ tar xzf mongo.tgz

如果没有安装curl 先安装apt-get install curl

步骤二:创建数据文件夹 默认情况下,MongoDB会在/data/db/这个文件夹存放数据,这个文件夹需要自己手动创建。 通过如下方式创建:

$ adduser mongodb
$ passwd mongodb
$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db
$ chown -R mongodb:mongodb /data

当然 可以 通过--dbpath 命令 指定MongoDB将数据存储到另外的目录中去。

步骤三:让数据库运行起来 在控制台中:

$ nohup ./mongodb-xxxxxxx/bin/mongod &
$ ./mongodb-xxxxxxx/bin/mongo
> db.foo.save( { a : 1 } )
> db.foo.find()
或
 ./mongodb-linux-x86_64-1.4.4/bin/mongod

加入开机启动项里 vim /etc/rc.local 加入如下代码保存即可:

#add mongonDB service
/usr/local/webserver/mongodb/bin/mongod –dbpath /data/db –logpath /data/mongodb_log/mongodb.log –logappend –rest &

注:将mongo作为系统命令使用,使其在任何目录下可用:

cp   /usr/local/webserver/mongodb/bin/mongo     /usr/bin/

安装MongoDB PHP扩展
根据自己的PHP版本下载PHP扩展:http://github.com/mongodb/mongo-php-driver/downloads,
提示:
1、VC6适合Apache、VC9适合IIS;
2、Thread safe适合PHP以模块运行方式、Non-thread safe适合CGI运行方式。
修改php.ini,加入:extension=php_mongo.dll,重启Web服务器。

用PHP程序测试一下,成功!
$conn = new Mongo("192.168.12.129:27017");
$db = $conn->selectDB("test");
//$db = $conn->test;
$collection = $db->shicai;
$rows = $collection->find();
print_r($rows); exit;

点击查看原文阅读(192) | 评论(0) | 分类:NoSQL

手机触摸屏的JS事件 (2011-11-08)

处理Touch事件能让你跟踪用户的每一根手指的位置。你可以绑定以下四种Touch事件:

touchstart:  // 手指放到屏幕上的时候触发 
touchmove:  // 手指在屏幕上移动的时候触发 
touchend:  // 手指从屏幕上拿起的时候触发 
touchcancel:  // 系统取消touch事件的时候触发。至于系统什么时候会取消,不详

在开始描述touch事件之前,需要先描述一下多触式系统中特有的touch对象(android和iOS乃至nokia最新 的meego系统都模拟了类似的对象,这里只针对iOS,因为我只有iPad可用于测试。。)。这个对象封装一次 屏幕触摸,一般来自于手指。它在touch事件触发的时候产生,可以通过touch event handler的event对象取到 (一般是通过event.changedTouches属性)。这个对象包括一些重要的属性:

client / clientY:// 触摸点相对于浏览器窗口viewport的位置 
pageX / pageY:// 触摸点相对于页面的位置 
screenX /screenY:// 触摸点相对于屏幕的位置 
identifier: // touch对象的unique ID 

HTML主体定义

<body style=”height: 100%;margin:0;padding:0”>
<div id=”canvas”  style=”position: relative;width:100%;height: 100%;”></div>
</body>

点击查看原文阅读(407) | 评论(0) | 分类:前端开发HTML5/JS
<< 1 2 3 4 5 6 7 8 9 10 >>