官网地址:SW-X框架-专注高性能便捷开发而生的PHP-SwooleX框架
SW-X 依赖于PHP-Swoole扩展,所以在运行SW-X之前,我们需要先安装Swoole扩展。
1、安装Swoole4.8.0
wget http://pecl.php.net/get/swoole-4.8.0.tgz tar -zxvf swoole-4.8.0.tgz cd swoole-4.8.0 phpize # 注意:这里的php安装目录要改成你项目所在的 ./configure --with-php-config=/www/server/php/73/bin/php-config --enable-openssl make make install # 修改php.ini,末尾加上下面这句 extension=swoole.so # 查看扩展是否安装成功 php -m
2、拉取 SW-X 源码最新版
SW-X的安装支持两种方式:
一、官网有提供所有历史版本的源码下载,可直接下载解压:
二、也可以通过 composer 命令拉取
composer create-project swoolex/swoolex
下面我们来演示下composer的部署过程:
# 创建项目地址(按照你自己的项目管理路径) mkdir -p /var/www/html/swoolex/ # 进入该目录 cd /var/www/html/swoolex/ # 拉取SW-X composer create-project swoolex/swoolex
3、修改服务端口
SW-X的启动,依赖端口挂载,官方默认使用 9502 端口。
如果需要修改端口,只需要打开 /config/server.php 文件修改 port 参考即可。
如果你是云服务器,需要到安全组开放对应的端口,否则启动后无法正常访问服务。
如果安全组开放后,服务还是不能正常访问,可以查看服务器是否开启了防火墙:
# 查看防火墙状态 systemctl status firewalld # 直接关闭防火墙(测试使用,如果是正式建议单独开放端口,否则会很危险) systemctl stop firewalld # 开放某个端口 firewall-cmd --zone=public --add-port=9502/tcp --permanent
4、启动SW-X的HTTP服务
SW-X 支持启动5种服务,分别为:
- HTTP服务(API请求)
- WebSocket服务(长连接请求)
- MQTT服务(物联网通信)
- RPC服务(微服务)
- Tcp服务(自管理 Tcp Server)
具体的服务启动方式,参考官方文档,服务启动章节:HTTP - Web开发 | SW-X框架
下面我们来启动一个HTTP服务:
# 先进入项目根目录下 cd /var/www/html/swoolex/ # 使用php-cli命令启动服务(注意,这里php全局命令是对应我安装了swoole扩展的版本,如果你是多版本可以指定绝对路径) php sw-x http
上面命令启动后是会进入框架流程,Ctrl+C会直接关闭服务,如果需要守护进程启动服务,只需要末尾加上 -d。
# 守护进程方式启动服务 php sw-x http -d
启动后的CMD界面如下:
浏览器访问:http://外网IP:9502
就能看到框架HTTP服务,初始化的界面:
最后:
开源不易,希望看到本教程的技术大佬们,可以给我一个star,你们的支持是SW-X坚持下去的动力: