php-swoole在windows下安装php的拓展

PHP / 74人浏览 / 0人评论

研究即时通讯、长连接等问题的时候,要用swoole,在windows环境下是如何安装swoole拓展?但如果你想在windows环境下的安装php的swoole拓展,我们只需要安装Cygwin软件来实现一个linux环境,这样就可以在windows环境下安装php的swoole拓展。

研究即时通讯、长连接等问题的时候,要用swoole。

在windows环境下是如何安装swoole拓展?

但如果你想在windows环境下的安装php的swoole拓展,我们只需要安装Cygwin软件来实现一个linux环境。

这样就可以在windows环境下安装php的swoole拓展。

一:下载Cygwin和swoole

Cygwin下载地址:https://www.cygwin.com/

Cygwin下载

php的swoole拓展下载地址:https://github.com/swoole/swoole-src

swoole拓展下载

二:Cygwin安装

Cygwin安装步骤

1、双击打开下载的setup-x86_64.exe文件,就开始安装cygwin。

Cygwin安装

2、选择下载源,直接默认Install from Internet,下一步。

Cygwin安装

3、安装目录,可自选安装目录,或者默认,下一步。

Cygwin安装

4、包下载的目录,可自选安装目录,或者默认,下一步。

Cygwin安装

5、选择网络服务器,直接默认就行了,下一步。

Cygwin安装

6、选择一个下载服务器镜像网址:https://mirrors.aliyun.com

Cygwin安装

7、勾选需要安装的软件包,View下拉选择Category选项,搜索并选择需要安装的软件包。

以下软件包搜索全部选择安装,一个不能少

autoconf-archive:2019.01.06-1
gcc-core:9.3.0-2
gcc-objc++:9.3.0-2
libc++-devel:8.0.1-1
libc++1:8.0.1-1
libpcre-devel:8.44-1
libpcre2-devel:10.36-1
pcre2:10.37-1
php:7.3.4-1
php-devel:7.3.4-1
php-json:7.3.7-2
vim:8.1.1772-2

最后,选择完全部的软件包,点击下一步,直到安装完成。

Cygwin安装

Cygwin安装

Cygwin安装

三、编译安装Swoole

解压并放到目录(home)

解压上面下载的Swoole压缩包,放到cygwin的安装目录下的目录(home)中。

Swoole压缩包

打开cygwin并且进入Swoole目录

双击运行Cygwin软件,然后通过命令cd /home/swoole-src,进入swoole-src解压的源程序代码。

Cygwin软件

编译生成配置文件

在swoole-src的根目录下,执行命令phpize,可以生成编译的配置文件configure。

编译配置并检测环境且编译安装

生成编译的配置文件后,输入命令./configure && make && make install,等待编译安装swoole完成。

编译安装swoole

检测Swoole环境

进入测试目录

Swoole源代码中,有很多示例,我们可以直接运行进行测试,进入到examples目录,里面的全都是示例代码,我们选择http/server.php进行测试,然后cd http/进入到http目录。

执行php程序

上面已经进入到http目录,并且发现,当前目录下有一个server.php的文件,我们可以通过命令php server.php执行

编译安装swoole

浏览器运行

server.php有一行代码:

$http = new swoole_http_server("0.0.0.0", 9501);

开启swoole服务的端口为9501

浏览器地址栏输入127.0.0.1:9501或localhost:9501,显示Hello Swoole,则说明Swoole安装成功了!

Hello Swoole.
HEADER:
<?php
$array = array (
  'host' => '127.0.0.1:9501',
  'connection' => 'keep-alive',
  'upgrade-insecure-requests' => '1',
  'user-agent' => 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36',
  'accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
  'sec-fetch-site' => 'none',
  'sec-fetch-mode' => 'navigate',
  'sec-fetch-user' => '?1',
  'sec-fetch-dest' => 'document',
  'accept-encoding' => 'gzip, deflate, br',
  'accept-language' => 'zh-CN,zh;q=0.9,en;q=0.8',
);
SERVER:
<?php
$array = array (
  'request_method' => 'GET',
  'request_uri' => '/',
  'path_info' => '/',
  'request_time' => 1630522408,
  'request_time_float' => 1630522408.576745,
  'server_protocol' => 'HTTP/1.1',
  'server_port' => 9501,
  'remote_port' => 51901,
  'remote_addr' => '127.0.0.1',
  'master_time' => 1630522408,
);

转载注明:

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我