2021-03-05  131 views 1

YII框架在Linux中的 composer 安装步骤详解

准备安装一个完整纯净的YII框架,用于学习,苦恼的是不知道无法安装,看了官方的权威手册,执行命令发现报错。

现在记录完整的过程,以便于后期总结和分析。

服务器环境:Linux操作系统,Nginx,PHP 7.2, Mysql 5.6

 

第一步:用SSH连接自己的服务器

 

第二步:执行下面的命令(下载文件):

curl -sS https://getcomposer.org/installer | php

 

第三步:执行下面的命令(移动文件):

mv composer.phar /usr/local/bin/composer

 

 

第四步:执行安装命令(基础版),如下:

composer create-project --prefer-dist yiisoft/yii2-app-basic 具体目录

上面的“具体目录”,自己修改成为真实的网站文件目录,我的是 “/www/wwwroot/new.gongyingchuanbo.com”

所以,我需要执行的命令是如下的命令,你自己的,改掉即可

composer create-project --prefer-dist yiisoft/yii2-app-basic /www/wwwroot/new.gongyingchuanbo.com

 

提示: 如果你想安装 Yii 的最新开发版本,可以使用以下命令代替, 它添加了一个 stability 选项

composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic 具体目录

于是,真实的执行命令,就成了如下:

composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic /www/wwwroot/new.gongyingchuanbo.com

 

 

特别提醒:高级版安装命令略有不同

 

composer create-project --prefer-dist yiisoft/yii2-app-advanced 网站根目录

 

这个命令,会将高级应用程序安装在 你的网站根目录中。 当然,上面命令代码中的 “网站根目录” 必须更换成为你的网站真实目录,比如: /www/wwwroot/new.gongyingchuanbo.com

 

期间,可能会出现报错:

错误一:putenv() has been disabled for security reasons,错误(函数被禁用)解决方式

产生这个错误的原因是putenv()函数处于安全考虑被禁用了,开启这个函数就可以了。

我使用的是宝塔面板,在对应的php版本的设置中,找到禁用函数列表,删掉putenv函数,然后重启PHP 即可。

同样的道理,如果报其他的函数禁用,也同样的操作,比如最常见的,还有如下提示,一样的,PHP 管理设置里面,删除 exec 函数后重启 PHP 服务就可以了;

[ErrorException] exec() has been disabled for security reasons

 

 

 

错误二:不为空,自己把网站根目录下面的文件和文件夹全部删除即可解决

 

安装中途,需要输入一个 token,这个 token 从 GitHub.com 获取,没有帐号的话,自己注册一个

https://github.com/settings/tokens

把获取到的 token,在 SSH 中输入,它将会自动 写入到你的服务器 "/root/.config/composer/auth.json" 文件里面

0f57a6e62ddd86c2256e14a3abb28f4e6fbef976

注意哦,在SSH 中,输入或者粘贴 token,屏幕上不会显示出来,你只需要 粘贴后,回车即可!记得敲一下 回车键!

看到绿色的文字 “Token stored successfully”,表示 Token 正确,输入成功!

输入成功后,在你的 服务器目录 /root/.config/composer/auth.json 里面会写入 Token 数值,如下图:

 

 

错误三:下载 或者 安装 bower-asset/bootstrap 出错,如下图:

 

这个时候,需要自己下载一个 归档文件,把 bower-asset/bootstrap 目录提取出来,放到自己的网站对应的目录里面去,路径:vendor/bower-asset,执行时间,可以是在 前述“第四步”开始执行命令以后,在自己的网站根目录下面,可以看到 很多新增的文件夹以后,上传。

 

错误四:函数被禁用

错误代码:[ErrorException] exec() has been disabled for security reasons

解决办法:打开宝塔控制面板,PHP管理设置里面,禁用函数,删除 shell_exec 函数

如下图的操作:

 

总结:

整个安装过程,稍不注意就会全部失败,我是搞了好几天,一边操作,一边百度,一边记录。

 

还有,国外 Github 总是抽疯,始终下载不完整的朋友,可以考虑切换镜像源,如下:

一键切换国内镜像,命令为

composer config -g repo.packagist composer https://packagist.phpcomposer.com

 

阿里云镜像,命令为:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

阿里云原文地址:https://developer.aliyun.com/composer

 

 

切换为国外镜像,命令为:

composer config -g repo.packagist composer https://packagist.org

 

或者,取消镜像设置,改回到默认,用下面的命令

composer config -g --unset repos.packagist

 

清空缓存的命令:

composer clear-cache

 

查看自己设置的镜像是否成功

使用下面的命令即可

composer config -gl

如图:

 

还有一个非常坑爹的地方,就是安装 bower-asset/bootstrap 始终不成功!或者是 下载 bower-asset/bootstrap 失败

根据官方文档,需要把如下代码加入到 composer.json 文件里面,目录是:/root/.config/composer/composer.json

"replace": {
"bower-asset/jquery": ">=1.11.0",
"bower-asset/inputmask": ">=3.2.0",
"bower-asset/punycode": ">=1.3.0",
"bower-asset/yii2-pjax": ">=2.0.0"
}

 

如下图:

 

Linux 下,采用归档文件安装 YII 框架的方法:

https://my.oschina.net/botkenni/blog/1604244

 

1 条留言  访客:0 条  博主:0 条

  1. 共赢传播官博 || 朱家成 1

    即将更新分享YII 框架,通过归档文件安装方法和具体步骤

给我留言

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: