composer部署Yii2框架(linux)遇到问题及解决思路总结
来源:互联网 发布:2016淘宝热卖行业 编辑:程序博客网 时间:2024/05/25 01:34
初次接触用composer安装php框架会遇到很多不明白的概念和流程,安装的过程也是一种学习的过程,不过有很多时候出错不一定是设置或命令错误,仅仅因为网络或者..墙的关系,不过这些不确定因素和陌生的模式,足以让部分初学者望而却步,另外包括很多解决问题的方法都是英文,在此也可以看出英语对程序员提升也很关键.
当然,yii框架相对Laravel并没有严格要求使用composer安装,所以也可以到官网下载相关程序包,解压使用(可能要有一些本地配置).
yii网址 : http://www.yiiframework.com/download/
composer网址 : http://www.phpcomposer.com/
一,安装composer
因为windows安装方式偏人性化(下一步..),一般也遇不到太大问题,如果遇到(请重启...)可以百度相关问题,也可以参考另一篇博文:http://blog.csdn.net/h330531987/article/details/76184087
windows安装包下载:https://getcomposer.org/Composer-Setup.exe
下面说linux下遇到的问题:1.1 提示 "If possible you should enable it or recompile php with --with-openssl"
错误原因 : 这样的错误, 从最后一行可以看出,就是在编译 php 的时候,没有把 --witch-openssl 加上
解决方案 : php无需重新编译安装openssl扩展
注:并不需要重启,添加扩展就可以使用
1.2 运行composer提示 -bash: php: command not found
错误原因 : 未全局安装或未配置环境变量
解决方案 :
在composer.phar目录下(我觉得cp要好些)
sudo mv composer.phar /usr/local/bin/composer
然后配置环境变量(如果出现'command not found ',则考虑环境变量)vi /etc/profileexport PATH="$PATH:/usr/local/bin"#保存后别忘执行source /etc/profile
1.3 root用户执行composer提示"Do not run Composer as root/super user"
错误原因 : composer为了防止非法脚本在root下执行,避免第三方使用root权限
解决方案:
因为是本地使用,所以我用root权限创建了一个user0用户,用户组为game,然后将composer权限修改,用su user0切换用户,通过user0运行
下面大致写下创建用户和用户组
groupadd gameuseradd -g game user0passwd user0 --设置密码在用user0运行时可能需要用到sudo命令,此时需要root用户授权,授权配置在
vi /etc/sudoers找到 'root ALL=(ALL) ALL ' 在下面添加一行user0 ALL=(ALL) ALL
然后还要设置composer文件权限
chmod 777 /usr/local/bin/composer
注:任意目录下执行 composer -V 如果显示版本号和日期则安装就完成了
二,部署Yii2框架
一般安装都先看下官方文档,里面有很详细的说明和命令提示.
这里再说一下,可以将命令分步执行,这样出问题才能最快定位解决,
#安装composer管理前端资源(bootstrap, jquery)的插件composer global require "fxp/composer-asset-plugin"#再创建yii项目composer create-project --prefer-dist yiisoft/yii2-app-basic basic#上面为基础版,下面为高级版composer create-project --prefer-dist yiisoft/yii2-app-advanced advanced
2.1 安装前端资源管理插件时,错误提示;"Changed current directory /home/user0/.composer"
错误原因:
推测在运行全局composer命令前,使用了php composer.phar 局部命令,导致全局和局部出现交叉错乱
解决方案:
删除错误提示目录下的vendor/fxp目录
sudo rm -rf /home/user1/.composer/vendor/fxp重新执行
composer global require "fxp/composer-asset-plugin"
2.2 最让我纠结的''composer Failed to decode response: zlib_decode(): data error''
错误原因 :
这个问题,有人说是composer版本问题,要么高,要么低(未验证) ; 也有人说是设置问题,确实有设置,但是设置以后依然没什么鸾用; 还有人说是网络问题(怀疑被墙了)??
解决方案 :
原因大致就这么几个,后来也不知道是哪个的问题,反正一套下来问题是解决了
1.升级composer
在composer文件目录下运行( /usr/local/bin )
composer self-update
2.设置/usr/local/php/lib/php.ini
zlib.output_compression = On zlib.output_compression_level = 5
3.翻墙?还是推荐使用镜像吧
推荐一个网站 : https://pkg.phpcomposer.com/ 中国全量镜像,可以募捐,个人捐款50元就能挂头像
在指定项目的composer.json所在目录执行
composer config repo.packagist composer https://packagist.phpcomposer.com如果还是不行就修改全局配置(官方推荐)
composer config -g repo.packagist composer https://packagist.phpcomposer.com
2.3 Your configuration does not allow connections to http://packagist.phpcomposer.com/packages.json. See https://getcomposer.org/doc/06-config.md#secure-http for details.
错误原因 :
使用composer链接http时候,由于composer.json设置不允许连接非ssl网址,所以出错
解决方案:
修改composer.json配置,添加一条
"config": { "secure-http": false}
2.4 composer升级和更新yii
composer自己升级:
composer self-update
composer升级yii:
进入框架根目录,然后执行
composer update
2.5 关于GitHub,安装时要求输入Token (hidden):输入在官网生成的秘钥回车即可
一般会给一个github网址,需要复制后访问,如下:
Could not fetch https://api.github.com/repos/RobinHerbots/jquery.inputmask/contents/bower.json?ref=03e65a2d28159e885e18acee9cae53ac6318372b, please create a GitHub OAuth token to go over the API rate limitHead to https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+localhost+2017-08-03+1904to retrieve a token. It will be stored in "/home/vagrant/.composer/auth.json" for future use by Composer.Token (hidden):使用github账号登录
点击 「Generate new token」 新建一个 Token,输入即可(此处是隐藏口令,输入时候并不能看到)
暂时就总结到这里,如果有不对的地方望留言指正.
转载请注明出处 : 一株马蹄莲--http://blog.csdn.net/h330531987/article/details/76690574
刚才装Laravel的时候遇到了一个小问题,顺便加在后面
错误提示:
Installing laravel/laravel (v5.2.31) Failed to download laravel/laravel from dist: The zip extension and unzip command are both missing, skipping.The php.ini used by your command-line PHP is: /usr/local/php/lib/php.ini Now trying to download from source - Installing laravel/laravel (v5.2.31): Cloning 76b8ef7204
原因分析:
由于没有安装 zip unzip 包的问题,之前安装了yum,所以直接用yum安装
yum install -y zip unzip顺便把curl也装了
yum install curl如果是用ubuntu系统,可以使用apt-get
apt-get install curlapt-get install zip unzip
.小尾
阅读全文
0 0
- composer部署Yii2框架(linux)遇到问题及解决思路总结
- Composer安装yii2遇到的token问题及解决方法
- composer安装yii2问题总结
- composer安装yii2问题总结
- Windows下使用Composer安装yii2遇到的问题及解决方法
- 【Day64】Windows下使用Composer安装yii2遇到的问题及解决方法
- composer 安装yii2框架
- composer 安装yii2框架
- yii2 adminlte 用composer安装时遇到的问题
- 解决composer下载yii2没有vendor文件夹问题
- 项目中遇到的问题及解决思路
- windows下composer和yii2安装问题及解决办法
- Linux使用Composer安装yii2的方法及bug处理
- Linux使用Composer安装yii2的方法及bug处理
- Linux使用Composer安装yii2的方法及bug处理
- Linux使用Composer安装yii2的方法及bug处理
- SAE本地部署开发遇到的问题及解决
- ssm框架项目导入及解决tomcat部署问题
- 在K8s中创建StatefulSet
- ios 消息转发机制
- Swift系列之——UISearchBar的简单使用
- Hadoop-2.7.2集群的搭建——集群学习日记
- 【面试题】计算机网络相关
- composer部署Yii2框架(linux)遇到问题及解决思路总结
- 1181: 谁的年龄最小(结构体专题)
- 字符串转换
- 华为OJ——统计大写字母个数
- ld: framework not found Pods
- [RK3288][Android6.0] 调试笔记 --- 低电压引起的关机问题
- 矩阵和图像操作
- C++之运用成员模板接受所有兼容类型(45)---《Effective C++》
- 诡异的二叉树非递归遍历之前序