Swoole和ThinkPHP6结合使用

运行环境
--------------------------------------------------
操作系统:CentOS 7
PHP版本:8.1

创建ThinkPHP6项目
[root@localhost ~]# cd /inetpub/wwwroot/
[root@localhost wwwroot]# /program/php/bin/php /usr/local/bin/composer create-project topthink/think swoole-thinkphp6
[root@localhost wwwroot]# cd swoole-thinkphp6
[root@localhost swoole-thinkphp6]#

安装多应用模式扩展、模板引擎扩展、Swoole扩展
[root@localhost swoole-thinkphp6]# /program/php/bin/php /usr/local/bin/composer require topthink/think-multi-app
[root@localhost swoole-thinkphp6]# /program/php/bin/php /usr/local/bin/composer require topthink/think-view
[root@localhost swoole-thinkphp6]# /program/php/bin/php /usr/local/bin/composer require topthink/think-swoole
说明:安装好Swoole扩展后会自动生成一个/config/swoole.php配置文件,与Swoole有关的配置都在这个文件里。

启动HTTP服务
[root@localhost ~]# /program/php/bin/php /inetpub/wwwroot/swoole-thinkphp6/think swoole
Starting swoole server...
You can exit with `CTRL-C` # 按“Ctrl+C”可停止HTTP服务

这时在浏览器地址栏输入http://192.168.***.***/就可以访问网站首页了,访问其它页面可用“http://192.168.***.***/应用/控制器(无后缀)/操作”格式的URL,如:
网站首页:http://192.168.***.***/home/index/index
关于我们:http://192.168.***.***/home/about/index
联系我们:http://192.168.***.***/home/contact/index

由于使用了Swoole,所以实例会常驻内存(PS:模板文件不常驻内存),这就导致了开发者每次修改代码后都要重启Swoole才能查看运行效果。为了解决这个问题TP框架在/config/swoole.php配置文件设置了一个热更新配置项[hot_update][enable],它的值为env('APP_DEBUG', false),也就是使用/.env文件(若没有该文件可手动创建)的APP_DEBUG值,很明显TP框架是希望我们在生产环境关闭热更新,在开发环境才开启热更新。需要注意的是配置文件的内容也是常驻内存,但是修改配置文件不会触发热更新,必须手动重启Swoole才能加载最新的配置文件。

Copyright © 2024 码农人生. All Rights Reserved