IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    phpstudy里的composer安装与使用

    unvs发表于 2021-11-04 06:58:00
    love 0

    一、composer安装
    环境windows+PHP7.2
    1、找到composer的安装目录:D:\phpstudy\PHPTutorial\tools\composer
    2、把目录下的 composer.bat 和 composer.phar 复制到对应PHP版本的目录下,跟php.exe同级目录
    3、修改composer.bat的内容为:
    @ECHO OFF
    @php “%~dp0composer.phar” %*

    4、打开phpstudy composer 命令窗口:phpstudy–>其它选项菜单—>其它高级应用—>PHP Composer
    5、切换到你的项目目录下
    6、配置中国镜像
    命令行:composer config repo.packagist composer https://packagist.phpcomposer.com
    当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加如下代码):
    “repositories”: {
    “packagist”: {
    “type”: “composer”,
    “url”: “https://packagist.phpcomposer.com”
    }
    }
    7、下载你需要的扩展/项目 composer require think/worker
    如果有composer.json已经require,可以直接执行composer update

    8、完善系统环境变量,将PHP变量添加至系统
    我的电脑——属性——高级系统设置——环境变量——系统变量PATH编辑,新增加
    D:\phpStudy\PHPTutorial\php\php-7.2.1-nts

    二、报错
    the “https://packagist.phpcomposer.com/pakeages.json” file could not be downloaded
    切换为国内阿里云镜像
    根目录命令执行:(或手动改composer.json文件,第一点第6条url改成https://mirrors.aliyun.com/composer/)
    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

    三、报错
    Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes) in composer.phar/src/composer/dependencyresolver/rule.php
    有关memory相关的错误代码,说明PHP内存限制了包下载大小,需要修改配置
    修改php.ini   
    默认:memory_limit = 128M
    改为:memory_limit = 1280M

    四、执行composer update前,需要将compose.lock文件删除

    五、执行命令报错
    pcntl_fork() has been disabled for security reasons in file
    说明pcntl函数被禁止,需要到php.ini文件里去掉,修改php.ini将disable_functions这个里面的以pcntl开头开头的函数都去掉,然后保存

    六、
    php server.php start -d 执行页面文件命令

    七、执行php命令报错
    php start.php start
    PHP Warning: stream_socket_server(): unable to connect to tcp://xx.xx.xx.xx:xxxx (Address already in use) in /home/workerman-chat/Workerman/Worker.php on line xxxx

    说明可能端口被占用,无法启动服务

    可以通过命令netstat -anp | grep 端口号来找出哪个程序占用了端口。
    然后停止对应的程序释放端口解决。

    如果不能停止对应端口的程序,可以通过更换workerman的端口解决。
    如果是Workerman占用的端口,又无法通过stop命令停止(一般是丢失pid文件或者主进程被开发者kill了导致),可以通过运行以下两个命令杀死Workerman进程。
    killall php
    ps aux|grep WorkerMan|awk ‘{print $2}’|xargs kill -9

    八、执行启动命令报错
    PHP Warning: stream_socket_server(): unable to connect to tcp://xx.xx.xx.xx:xxx (Cannot assign requested address) in /home/GatewayWorker/Workerman/Worker.php on line xxxx
    关键字:Cannot assign requested address
    失败原因:
    启动脚本ip参数写错,不是本机ip,请填写本机ip机或者填写 0.0.0.0(表示监听本机所有ip)即可解决。
    提示:Linux系统可以通过命令 ifconfig查看本机所有网卡ip。
    如果您是腾讯云用户,注意您的公网ip实际是代理服务器ip,公网ip并不属于你的服务器,所以无法通过公网ip绑定,但是可以通过0.0.0.0来绑定。

    九、启动命令报错:
    Waring stream_socket_server has been disabled for security reasons in …
    失败原因:
    stream_socket_server 函数被php.ini禁用
    解决方法
    1、运行php –ini 找到php.ini文件
    2、打开php.ini找到disable_functions一项,将stream_socket_server禁用项删掉

    十、启动命令报错
    PHP Warning: stream_socket_server(): unable to connect to tcp://0.0.0.0:xxx (Permission denied)
    失败原因
    linux下监听端口如果小于1024,需要root权限。
    解决办法
    使用大于1024的端口或者使用root用户启动服务。

    十一、composer install 报以下错误:PHP Fatal error: Allowed memory size of XXXXXX bytes
    解决方法:
    COMPOSER_MEMORY_LIMIT=-1 composer install

    直接在composer install前面加COMPOSER_MEMORY_LIMIT=-1
    这类错误属于内存限制错误,在这种情况下,memory_limit应该解除对php的内存限制

    十二、



沪ICP备19023445号-2号
友情链接