zoukankan      html  css  js  c++  java
  • Swoole 常见问题

    • 本文不针对 pecl 安装的 swoole,建议也不要使用这个方式安装,因为这种方式安装的 swoole 无法自定义编译选项
    • 一个稳定的 PHP5 版本,虽然已经支持 PHP7 了,但似乎还有暗坑,建议使用 PHP5.6
    • 一个稳定的 swoole 版本,使用带有 stable 的版本,由于 swoole 还在不断完善中,每个版本都会有 bug 的解决,所以请使用 2.0 以下的最新 stable 版本

    Swoole 扩展编译失败,如何解决

    • 某些依赖未安装,如 openssl, libcompress 之类,按提示安装就好,swoole 提示可能不会很明显
    • 权限问题,swoole 源码目录不要使用 windows 挂载的目录

    如何查看是否已经安装成功

    // 通常情况下,编译安装成功,swoole.so 会添加到默认扩展目录下,目录查看/php-path/bin/php-config --extension-dir
    
    // 此命令会输出 swoole 版本及默认配置,如果没有输出或者报错,则说明扩展仅仅编译成功,未启用
    php --ri swoole
    
    // 某些情况下,你的 php-fpm和php-cli使用的不是同一个php.ini// php-fpm 查看php.ini配置路径,请使用phpinfo函数// php-cli 查看 php.ini 配置路径
    php --ini|grep "Loaded"// 输出的路径如果和phpinfo中的路径一致,则表示使用的同一个php.ini,反之则不是,启用扩展时请选择正确的配置文件

    扩展已经安装成功,但运行提示 'xxx' class not found

    // 前提是你扩展安装并启用成功,也就是说你是通过命令行运行的文件
    php filename.php
    // 命令行下 swoole 已经启用
    php --ri swoole
    // 在输出注意输出中有一项 use_namespace,如果此项为1,则需要使用命令空间// swoole_server => SwooleServer// 在确认扩展启用无误的情况下,class not found 都是这个原因造成的

    服务端已经启动,客户端连接不上

    • 请检查防火墙规则
    • 如果使用的虚拟机,请检查端口映射是否已经添加

    提示 SWOOLE_SSL 常量未定义

    // 查看swoole编译选项 openssl 是否为 enable状态
    php --ri swoole
  • 相关阅读:
    linux系统之tr命令
    Tmux会话-基本操作及原理
    [题解] P1552 [APIO2012]派遣
    数论学习笔记
    Splay 学习笔记
    SpringCloud---入门篇(1)
    获小黄杉有感
    2020湖湘杯-CRYPTO-简单的密码3 WriteUp (CBC字节翻转)
    ECC椭圆曲线加密算法—加解密(SageMath实现)
    栅栏密码&W型栅栏密码-加解密(python实现)
  • 原文地址:https://www.cnblogs.com/Tur-mann/p/6723666.html
Copyright © 2011-2022 走看看