阿里云服务器倒腾记录
爱折腾的心从未停止过.
最近阿里听说阿里出了一个9.9享受半年云服务器的活动,抱着贼便宜啊的心态就去试试了,在老大哥的帮助下终于是通过命令行进去了,这里就记述几个我遇到的坑.
不要运行 yum install php
千万不要!!!我当时以为会安装起码5.6的php版本,结果给我装了个5.4...这就很尴尬了,之后没办法,想删除,可是运行yum remove php
,根本删不掉,人家还是很欢乐的在你的服务器上跑着,百度了很多教程,其中好像成功删除的命令是yum remove php-common
,之后我再去安装yum install php56
,就成功了.之前本地一直是在Ubuntu上进行开发的,也没接触过Centox,所以对yum
不是很熟悉,所以在这里记录一下我今天遇到的几个基础的yum
命令:
# 安装某一扩展
yum install packageName
# 查看已安装扩展
yum list installed
# 查看可安装拓展
yum list
# 删除扩展
yum remove
上面支持使用通配符,查找时建议使用grep
命令进行筛选.
composer的坑
如果你也是直接使用yum install composer
进行安装composer
的话,那么恭喜,你会在莫名其妙之间,由于依赖自动解决,安装上php
,也就是等同于运行一次yum install php
,上面好不容易删除掉,这里又装回来…..
于是放弃了使用yum
进行安装,改用官网教程进行安装,这里摘抄一下:
方法一
- 下载配置文件:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
注意!由于前面我们已经把php进行了删除,所以是找不到php
这个命令的.这里需要修改成我们具体安装的php命令,比如我是php56
,那么就是:
php56 -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
- 检查下载的文件是否正确
php56 -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
- 运行配置文件
php56 composer-setup.php
- 删除配置文件
php56 -r "unlink('composer-setup.php');"
之后就会得到一个composer.phar
的文件.运行所有的composer
命令,都只需要使用php驱动该文件即可,比如,我想运行composer install
命令,只需要执行php56 composer.phar install
就可以达到相同的效果了.
方法二
如果你不想像上面那么一步步来生成这个文件,那么上面的官网教程中有提供各个php版本的对应文件下载,下载下来后直接进行运行即可.
修改composer的镜像
对于我这种小白来说,什么叫镜像是一点概念都没有,所以对我来说,换个镜像跟是换个下载源一样……
至于为什么换,慢啊,特别是我没有修改前,运行一个composer install
,能直接让我的阿里云连接死机的地步.于是只好去修改了.修改时我现在知道的方法是直接修改composer.json
文件,其中的内容是:
"repositories": [
{"type": "composer", "url": "http://pkg.phpcomposer.com/repo/packagist/"},
{"packagist": false}
]
如果你的composer.json
中没有该段配置的话,你直接在底部加进去就可以了,如果有,那就修改其中的url
,修改为国内的几个地址:
- http://packagist.phpcomposer.com 这个我试过,很快
- http://packagist.cn 没试过…..
还有,如果你的连接提示如下错误:
Your configuration does not allow connections to http://packagist.phpcompose
可能造成的原因是你的连接不支持https
的传输,关掉安全验证,就是修改下面的配置:
"config":{
"secure_http":false
}
再说一遍,不需要一模一样,只需要在config
的配置中关掉secure_http
,即设置为false
.