centos7 安装php环境和安装swoole
这仅是我在网上找了多个解决方法,搞定了我遇到的问题,做的一个记录,买这个服务器就是为了测试swoole,结果快到期了,swoole还没装好
感谢https://www.cnblogs.com/phpwechat/p/8417331.html
https://www.cnblogs.com/zakun/p/5840073.html
https://blog.csdn.net/malinjie66/article/details/52175132
PHP版本依赖
Swoole-1.x
需要PHP-5.3.10
或更高版本Swoole-2.x
需要PHP-7.0.0
或更高版本Swoole-4.x
需要PHP-7.1.0
或更高版本
安装httpd(就是apache)
1.安装yum -y install httpd
2.开启apache服务systemctl start httpd.service
3.设置apache服务开机启动systemctl enable httpd.service
安装php
CentOS/RHEL 7.x:
- 1 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- 2 rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:
1 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
2 rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum安装php7.0:(拓展自选)
1 yum install php70w-common php70w-fpm php70w-opcache php70w-gd php70w-mysqlnd php70w-mbstring php70w-pecl-memcached php70w-devel
以上命令安装了下面的拓展!
php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-filter, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib
安装完后,可以先写个index.php测试一下,我的网站目录是在根目录的var/www/html/下面写php或html即可
如果写的html可以浏览器访问,但是php直接把源码显示出来了,网上说是因为apache没有安装或关联php模块
使用这个命令yum install mod_php71w(https://blog.csdn.net/joker_daddy/article/details/79180963)
这样显示源码的问题就ok了
安装swool
pecl install swoole
安装可选参数默认 NO
enable debug/trace log support?
enable sockets supports?
enable openssl support?
enable http2 support?
enable async-redis support?
enable mysqlnd support?
enable postgresql coroutine client support?
- 然后修改php.ini
增加
extension=swoole.so
然后重启httpd(systemctl restart httpd.service)- 检查
php -m | grep swoole
如果有显示说明安装好了- 安装mysql去网上查吧
至于测试swoole前往 https://wiki.swoole.com/wiki/page/p-quickstart.html- 查看进程
- netstat -antp #查看所有建立的TCP连接
- netstat -lntp #查看监听(Listen)的端口
- 根据pid杀死进程
kill -9 pid数- 如果做一个小测试呢
https://www.cnblogs.com/zhanghuilong/p/6734131.html
https://www.cnblogs.com/zhanghuilong/p/6734131.html- 大意就是新建一个测试用的php里面代码都是抄官方文档的
- 新建文件 server.php
- <?php
- $serv = new swoole_server('127.0.0.1', 9501);
- //server的创建,只需要绑定要监听的ip和端口,如果ip指定为127.0.0.1,则表示客户端只能位于本机才能连接,其他计算机无法连接。
- //端口这里指定为9501,可以通过netstat查看下该端口是否被占用。如果该端口被占用,可更改为其他端口,如9502,9503等。
- $serv->set([ //我开2个worker进程处理我们的业务
- 'worker_num' => 2,
- ]);
- // 有新的客户端连接时,worker进程内会触发该回调
- $serv->on('Connect', function ($serv, $fd) {
- echo "new client connected." . PHP_EOL;
- });
- //参数$serv是我们一开始创建的swoole_server对象,
- //参数$fd是唯一标识,用于区分不同的客户端,同时该参数是1-1600万之间可以复用的整数。
- // server接收到客户端的数据后,worker进程内触发该回调
- $serv->on('Receive', function ($serv, $fd, $fromId, $data) {
- // 收到数据后发送给客户端
- $serv->send($fd, 'Server '. $data);
- });
- // 客户端断开连接或者server主动关闭连接时 worker进程内调用
- $serv->on('Close', function ($serv, $fd) {
- echo "Client close." . PHP_EOL;
- });
- // 启动server
- $serv->start();
- ?>
然后进入到server.php 文件的目录
执行 php server.php
然后再开一个客户端
执行命令
- telnet 127.0.0.1 9501
- > hello world
- > Swoole: hello world
- 可能telnet没有安装会报错
- 执行命令
yum install -y telnet
centos7 安装php环境和安装swoole的更多相关文章
- Centos7之LNMP环境编译安装
Centos7之LNMP环境编译安装 一.系统环境准备 注:安装时间过长,只做参考!!!1.系统信息 [root@localhost ~]# uname -r 3.10.0-957.el7.x86_6 ...
- 搭建centos7的开发环境3-Spark安装配置
说起大数据开发,必然就会提到Spark,在这片博文中,我们就介绍一下Spark的安装和配置. 这是Centos7开发环境系列的第三篇,本篇的安装会基于之前的配置进行,有需要的请回复搭建centos7的 ...
- Centos7.4 版本环境下安装Mysql5.7操作记录
Centos7.x版本下针对Mysql的安装和使用多少跟之前的Centos6之前版本有所不同的,废话就不多赘述了,下面介绍下在centos7.x环境里安装mysql5.7的几种方法: 一.yum方式安 ...
- Docker DevOps实战:Docker+Jenkins+Python+Pytest+Allure(1)- 创建Jenkins容器、安装Python环境、安装项目依赖类库、安装Allure报告插件
前言: 本文实操笔记参照菠萝笔记,安装过程中的坑大家可以参考下 创建Jenkins容器 # 下载Jenkins镜像 [root@localhost ~]# docker pull jenkins/je ...
- Centos7.5 java环境的安装配置
1.查看系统中的java环境 [root@localhost ~]# java -version openjdk version "1.8.0_101" OpenJDK Runti ...
- CentOS7.X+LAMP环境下安装zabbix4.X
1.安装zabbix仓库 rpm -ivh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noar ...
- vagrant + virtualbox安装centos环境+docker安装
1. 下载vagrant 并安装,安装完成后,输入vagrant回车查看是否安装成功 2. 下载virtualbox.box并安装,安装完成后. 3. 创建虚拟机文件夹,例如.F:/vmimg/fir ...
- Mac 安装Rudy环境 pod安装前的准备工作
之前已经说过怎么使用pod 今天说一下安装pod之前的准备工作 首先呢就是Rudy 环境(前提是你已经安装了Xcode) 在终端输入一下命令 期间可能也许会要你输入密码 curl -L https:/ ...
- CentOS 安装开发环境 并安装coTurn
从官网 https://www.centos.org/download/ 下载镜像文件 从163的镜像站点下载,速度较快 http://mirrors.163.com/centos/7/isos/x8 ...
随机推荐
- Python3.7&Django1.11.15 兼容性问题
环境: 1. Windows10 2. python3.7 3. Django1.11.15 启动Django时抛出以下异常: Unhandled exception in thread starte ...
- poj 2503 哈希 Map 字典树
Babelfish Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 36967 Accepted: 15749 Descr ...
- js04---object1
我们目前为止大多数引用类型都是Object类型的实例,Object也是ECMAScript中使用最多的一种类型(就像java.lang.Object一样,Object类型是所有它的实例的基础).Obj ...
- vim-大小写装换
以下内容参考自 http://blog.csdn.net/yangzhongxuan/article/details/8484167 自己验证了效果 命令一:单个字符转换(光标所在位置的字母进行转换) ...
- makeMtk- user 版本编译
有时候我们需要在我们的手机上编译user 版本,先说一下user 跟eng版本的区别 user:这个版本是没有root权限的,当你adb shell进入后,linux下显示的是$,不可以push ap ...
- JS ajax 应用 (下拉列表联动)
<script language="javascript"> var http_request=false; function send_request( ...
- 洛谷P3273 [SCOI2011]棘手的操作
题目描述 有N个节点,标号从1到N,这N个节点一开始相互不连通.第i个节点的初始权值为a[i],接下来有如下一些操作:U x y: 加一条边,连接第x个节点和第y个节点A1 x v: 将第x个节点的权 ...
- golang 方法内部定义子方法及调用
package main import ( "fmt" "reflect" ) func out(ch chan int) { <-ch fmt.Prin ...
- BZOJ1030: [JSOI2007]文本生成器(Trie图+dp)
Description JSOI交给队员ZYX一个任务,编制一个称之为“文本生成器”的电脑软件:该软件的使用者是一些低幼人群,他们现在使用的是GW文本生成器v6版.该软件可以随机生成一些文章―――总是 ...
- CISP/CISA 每日一题 三
CISA 每日一题(答) 测试应用控制的有效性包括: 分析计算机应用程序.测试计算机应用程序控制.选择和监控数据处理事务. 测试应用系统技术: 快照.映射.追踪和标识.测试数据(在真实的系统中的仿真交 ...