composer部署Yii2框架(linux)遇到问题及解决思路总结
2017-08-04 18:44
766 查看
初次接触用composer安装php框架会遇到很多不明白的概念和流程,安装的过程也是一种学习的过程,不过有很多时候出错不一定是设置或命令错误,仅仅因为网络或者..墙的关系,不过这些不确定因素和陌生的模式,足以让部分初学者望而却步,另外包括很多解决问题的方法都是英文,在此也可以看出英语对程序员提升也很关键.
当然,yii框架并没有严格要求使用composer安装,所以也可以到官网下载相关程序包,解压使用(可能要有一些本地配置).
yii网址 : http://www.yiiframework.com/download/
composer网址 : http://www.phpcomposer.com/
windows安装包下载:https://getcomposer.org/Composer-Setup.exe
下面说linux下遇到的问题:
1.1 提示 "If possible you should enable it or recompile
错误原因 : 这样的错误, 从最后一行可以看出,就是在编译 php 的时候,没有把
然后配置环境变量(如果出现'command not found ',则考虑环境变量)
下面大致写下创建用户和用户组
然后还要设置composer文件权限
注:任意目录下执行 composer -V 如果显示版本号和日期则安装就完成了
这里再说一下,可以将命令分步执行,这样出问题才能最快定位解决,
在指定项目的composer.json所在目录执行
当然,yii框架并没有严格要求使用composer安装,所以也可以到官网下载相关程序包,解压使用(可能要有一些本地配置).
yii网址 : http://www.yiiframework.com/download/
composer网址 : http://www.phpcomposer.com/
一,安装composer
因为windows安装方式偏人性化(下一步..),一般也遇不到太大问题,如果遇到(请重启...)可以百度相关问题,也可以参考另一篇博文:http://blog.csdn.net/h330531987/article/details/76184087windows安装包下载: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/profile export 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 game useradd -g game user0 passwd 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[/code]如果还是不行就修改全局配置(官方推荐)composer config -g repo.packagist composer https://packagist.phpcomposer.com[/code]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-updatecomposer升级yii:
进入框架根目录,然后执行composer update2.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 limit Head to https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+localhost+2017-08-03+1904 to 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-getapt-get install curl apt-get install zip unzip
.小尾
相关文章推荐
- 部署DTCMS到Jexus遇到的问题及解决思路---Linux环境搭建
- Windows下使用Composer安装yii2遇到的问题及解决方法
- 安装linux遇到问题总结以及解决方式
- 部署DTCMS到Jexus遇到的问题及解决思路---部署
- SELinux policy问题解决思路总结
- Linux 服务器下 tomcat9的安装部署(SSL证书部署)以及遇到的问题解决
- Java GC机制及原理 项目实际遇到GC问题解决思路和经验总结
- 记录Yii2框架开发微信公众号遇到的问题及解决方法
- linux-ubuntu下用ftp遇到的各种问题总结和解决
- SELinux policy问题解决思路总结
- yii2框架中(解压包安装的框架),composer安装yiisoft/yii2-jui出现错误,问题解决
- 解决pxe网络批量安装部署linux遇到的问题和解决方法
- 自写聊天室_LinuxC实现(1)——项目部署遇到问题及解决方法
- [置顶] 【总结】嵌入式Linux学习中遇到的问题及解决方法
- EasyUI这个框架用了好久了,总结一下遇到的问题和解决方法
- 部署DTCMS到Jexus遇到的问题及解决思路--验证码
- Composer安装yii2遇到的token问题及解决方法
- 习惯的养成—在解决问题的过程中提炼需要总结地地方(Linux 输入框架问题)
- linux下安装oracle9i的遇到的几个问题解决办法
- WCF 部署问题 小总结 (HTTP 不能注册的解决方法 和 部署Bat脚本)