workerman在Linux下的配置及其注意事项
twocode

###workman (linux)

- 虚拟机配置php和共享文件夹

1)下载vitrualBox

2) 安装虚拟机并配置连接外网

3)  centos 配置php及其workman扩展安装

#在线安装php([参考地址](http://www.cnblogs.com/liulun/p/3535346.html)

yum install php php-devel

//workman需要扩展CLI 和php.ini的模式不同 查看安装的扩展

php -m

#需要的必须php扩展

#- pcntl 

#- posix 

#- libevent(非必须,当业务需要支撑上万并发连接时,推荐安装libevent,能够支持巨大的并发连接)  

#- php>=5.3.3

1.命令行运行(此步骤包含了安装php-cli主程序以及pcntl、posix、libevent扩展及github程序)

yum install php-cli php-process git gcc php-devel php-pear libevent-devel

2.安装libevent失败 error: Cannot find libevent headers

a) 先确认是否缺少g++,安装g++ 重启终端

b)安装最新re2c(PHP的词法解析器,可忽略)

c)安装libevent-2.0.2-stable

wget http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.20-stable.tar.gz

tar zxvf libevent-2.0.20-stable.tar.gz

cd libevent-2.0.20-stable/

./configure --prefix=/usr/local/libevent-2.0.20-stable/

make

make install

cd ../

d)

$ cd libevent-0.1.0

$ /usr/local/php/bin/phpize

$ ./configure --with-php-config=/usr/bin/php-config --with-libevent=/usr/local/libevent-2.0.20-stable

$ make && make install

![libevent](http://i4.buimg.com/06adcd4721d0f77a.png)

e)

//创建libevent.ini

mkdir /etc/php.d/libevent.ini

php -m 

//编译配置完成

![libevent.ini](http://i2.buimg.com/f033a1de10c886d2.png)

f)安装检测

curl -Ss http://www.workerman.net/check.php | php

![http://i2.buimg.com/921a3ff6d86ce385.png](http://i2.buimg.com/921a3ff6d86ce385.png)

![http://i2.buimg.com/3af7fef361b29e0c.png](http://i2.buimg.com/3af7fef361b29e0c.png)

4)安装安装增强程序,配置虚拟机共享文件夹

#a.先安装好gcc

yum -y install gcc

#b.再安装kernel-devel和kernel-headers

yum search //搜索对应系统内核的版本 查看自己系统版本 uname -v 

yum install kernel-devel kernel-headers

#c.在安装完成后,做一个连接

mkdir /usr/src/linux

ln -s /usr/src/kernels/2.6.18-194.26.1.el5-i686 /usr/src/linux

#d.挂载iso

    mkdir /cdrom

    mount /mnt/cdrome /cdrom

    cd /cdrom

    sh VBoxLinuxAdditions.run

#可能出现的错误

#Building the main Guest Additions module                   [失败]

#说明没有安装成功

    #e.重启系统

   shutdown -r now

#f.检测是否安装成功

lsmod|grep vboxsf

/**

vboxsf 38088 0

vboxguest 152104 7 vboxsf

如此显示说明载入了内核模块 vboxsf

**/

#g.设置共享文件夹

重启完成在VirtualBox的菜单点击"设备(Devices)" -> 共享文件夹(Shared Folders)菜单,添加一个共享文件夹,选项固定和临时是指该文件夹是否是持久的。尽量使用英文名称(share)

#h.挂载共享文件夹

重新进入虚拟CentOs5.5,在命令行终端下输入:

   mkdir /mnt/share

##格式 mount -t vboxsf (宿主机文件夹) (虚拟机文件夹)

   mount -t vboxsf share /mnt/share

a.如果提示 /sbin/mount.vboxsf: mounting failed with the error: No such device

可能是没有载入内核模块 vboxfs ,先查看下:

#lsmod | grep vboxsf

如果没有结果返回,说明 vboxsf没有载入,执行

#modprobe vboxsf

这种情况我没遇到,根据自己实际情况

b./sbin/mount.vboxsf: mounting failed with the error: Protocol error

重新启动运行命令:

mount -t vboxsf share /mnt/share

报错:

/sbin/mount.vboxsf: mounting failed with the error: Protocol error

查看‘设备’->‘共享文件夹’是否为空啦,再重新手动添加即可

#i.正常的话应该可以访问共享文件夹

cd /mnt/share

ls -al

#将宿主机目录作为workman git目录即可

#j.此时的共享文件夹需要每次开机启动后,手动设置,自动挂载需要设置:

可以在/etc/fstab中添加一项

     www /mnt/shared vboxsf rw,gid=100,uid=1000,auto 0 0

   

- 实际使用中的注意事项

> 1.虚拟机访问 关闭防火墙

service iptables status

service iptables stop

![iptables](http://i2.buimg.com/c4505ecc61699022.png)

> 2.recvDate emputy

数据库配置有误

![recvData](http://i2.buimg.com/cf59164ffbb1252a.png)

> 3.启动方式

 php start.php start     启动,终端不能运行其他命令,也不能关闭,但是运行中的错误会显示

 php start.php start -d  启动,维护进程,终端可以正常使用

-安装mysql

 

1.yum list mysql-server

2.yum install mysql-server.x86_64

3.启动

service mysqld start

4.设置Mysql开机启动

chkconfig mysqld on

5.开启3306端口并保存

/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

/etc/rc.d/init.d/iptables save

6.设置密码

use mysql;

update user set password=password('密码') where user='root';

flush privileges;

7.设置Mysql远程访问

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

-安装php-mysql (PDO mysql php模块等等)

yum -y install php-mysql


相关文章:
,请先登录查看所有评论
网友评论已关闭