下载并安装comoser

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

结果各种超时

不能忍,打开迅雷下载installer:https://getcomposer.org/installer,

还是超时+报错

不能忍了,直接下载composer.phar文件(备注:phar是php项目文件压缩包格式)

composer下载地址:https://getcomposer.org/download/,选择最下面最新版

迅雷下载完成后,执行下面的代码,看看是否正常

php composer.phar

接着进行下面的操作

mv composer.phar /usr/local/bin/composer
chmod a+x /usr/local/bin/composer

接下来你可以直接使用composer了

composer -V

我们发现竟然是开发版,不太好吧,还是下载最新稳定版吧。

嗯,就是1.4.2,继续使用迅雷下载,爽歪歪。

说实话,下载一共花了3秒。

接着通过xshell的直接拖放过去。

rz #命令行下输入此命令,选择文件即可,此命令需要安装lrzsz软件包

接下来我们先删掉之前的composer并安装新的composer

rm -rf /usr/local/bin/composermv
composer.phar /usr/local/bin/composer
chmod a+x /usr/local/bin/composer

安装成功了。

加速composer依赖包的下载

参考链接:https://pkg.phpcomposer.com/ (国内composer下载加速镜像链接)

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

安装zan-installer脚手架工具

composer global require youzan/zan-installer

10秒内就安装好了。

接下来第一种用zan-installer脚手架安装zan框架方法是命令行直接找到zan文件去执行然后.zan

第二种方法是更改环境变量

我们在终端下直接输入zan命令,

发现这个命令并没有集成进去

其实我们只需要把composer的工具安装目录(通常在 ~/.config/composer/vendor/bin)放到PATH环境变量里面就好了,那行我们修改~/.bash_profile

复制当前终端并重新打开一个ssh,我们发现PATH环境变量生效了。

接下来我们就使用zan这个工具时发现zan这个脚手架工具没有执行权限

那我们就分配给它执行权限,为了省事,直接给composer下面的vendor递归加上可执行权限

chmod -R a+x ~/.config/composer/vendor

继续执行zan命令,又发现新问题

我嚓,这个框架竟然需要这个disable_functions里面的函数shell_exec

好,哥满足你,修改php.ini文件并把shell_exec去掉(危险提示:千万不要再生产环境中使用,否则后果自负)

去掉shell_exec之后继续使用zan命令发现好了,但是出现了警示。

好吧,我把exec这个被禁用的函数也开启

总算好了,连warning也没有了。

到最后composer提示笔者,请不要使用root账户玩composer,听你的,添加一个用户kemin,并赋予sudo权限。

但是请一定要记得,重新执行下面的操作

composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer global require youzan/zan-installer
chmod -R a+x ~/.config/composer/vendor
vim ~/.bash_profile #当然你也可以把这个加入到/etc/profile里面,但是不太建议哈

接下来可能还会初选disable_functions的问题,你只需要把它从disable_functions里面去掉就好了。

我们创建一个web可访问的目录

mkdir -p /srv/www

输入zan命令的时候,我们进入了交互模式,输入上面创建的/srv/www即可,由于是学习使用阶段,其它配置一路回车默认即可。

安装tree工具查看zan工具生成的目录结构

yum install -y tree
tree -L 2 /srv/www/zanphp-demo

如下所示

运行你的第一个zan应用

阅读文档:https://github.com/youzan/zanhttp

我们修改php.ini并加入2项配置:

# sudo vim /usr/local/php/etc/php.ini
zan.RUN_MODE = test
zan.DEBUG = true

接着在项目目录下面执行命令

php bin/httpd

访问127.0.0.1:8030

wget 127.0.0.1:8030

配置nginx并开启外网访问

参考官方给出的nginx配置:https://gist.github.com/agalwood/df9c7316d7e41a363c6fcc8e7907e54c

创建日志文件目录

sudo mkdir -p /data/logs/nginx

在aliyun上域名云解析那里加一条A解析记录。

把文件名为zan.shukaiming.com.conf和内容如下的文件放到nginx的vhost目录(在本地编辑好使用sudo rz放过去即可)

server {
listen 80;
server_name zan.shukaiming.com;
charset utf-8; access_log /data/logs/nginx/zanphp.access.log main;
error_log /data/logs/nginx/zanphp.error.log; root /srv/www/zanphp-demo;
index index.html index.htm index.php; error_page 404 /404.html;
error_page 500 502 503 504 /50x.html; location = /50x.html {
root html;
} location = /404.html {
root html;
} location / {
index index.html index.htm index.php;
proxy_set_header Host $host:$server_port;
proxy_pass http://127.0.0.1:8030;
}
}

笔者放到的目录是/usr/local/nginx/conf/vhost

sudo lnmp nginx reload

结果报错了

简单,原来是main这种标签命名的日志格式没有定义,我们去掉它,关于log_format同学们可以去nginx官网看看,那里讲得比较详细,这里就不展开了。

我们再次尝试,done

我们来看看访问效果。

来源:PHPAsk 作者:Kemin(Kemin

猿创|有赞的zan framework安装与使用[2]的更多相关文章

  1. 猿创|有赞的zan framework安装与使用

    1.准备工作 1.1 一台腾讯云服务器2核CPU+2G内存的Linux CentOS 7.2(谢谢小杨同学@erchoc) 1.2 预装lnmp一键安装包环境,官方地址:lnmp一键安装包 (如不会使 ...

  2. Robot Framework安装及配置

    Robot Framework安装及配置 需要按照的软件有Python.WxPython.robot framework.robotframework-ride.robotframework-sele ...

  3. robot framework 安装

    一.安装 Python 2.7 pip 和 setuptools (Python 的套件管理程式,最新版的Python 2.7.13已包含) Robot Framework (此工具本身) wxPyt ...

  4. Robot Framework 安装及环境配置

    Robot Framework 安装及环境配置 Robot Framework 介绍 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以 ...

  5. (一)Robot Framework安装

    准备工作: Python 2.7 (目前不能良好支持python3) pip 和 setuptools (Python 的套件管理程式,最新版的Python 2.7.16已包含) Robot Fram ...

  6. Robot Framework安装部署详细教程

    (转自“义甬君”) Robot Framework安装准备 说实话,在我玩了这么多自动化工具后,感觉Robot Framework所需的环境和安装过程是相对比较繁琐和复杂的.要真正搭建一套可以使用的R ...

  7. robot framework 安装配置

    robot framework 是一款专门用作自动化测试的框架,提供了丰富的内置库,与第三方库,也支持用户自己编写的库,robot framework +library 可以 用来做ui的自动化测试, ...

  8. Play Framework安装和配置

    安装环境: jdk 1.7; play 1.3.1; eclipse 安装指南:http://play-framework.herokuapp.com/zh/install 安装Play Framew ...

  9. PHP Framework安装

    Framework 1> 初始化 前提:服务器上已经装有 Apache/Nginx 和 MySQL 进入 hush-framework/hush-app/bin 目录(Linux 下需执行 ch ...

随机推荐

  1. POJ 2763 (LCA +RMQ+树状数组 || 树链部分) 查询两点距离+修改边权

    题意: 知道了一颗有  n 个节点的树和树上每条边的权值,对应两种操作: 0 x        输出 当前节点到 x节点的最短距离,并移动到 x 节点位置 1 x val   把第 x 条边的权值改为 ...

  2. [转] 利用shell创建文本菜单与窗口部件的方法

    [From] http://www.jb51.net/article/129460.htm 前言 创建交互式shell脚本最常用的方法是使用菜单.提供各种选项可以帮助脚本用户了解脚本能做什么,不能做什 ...

  3. jdk8涉及到的接口、类及方法

    bi是binary的简写,二元的,表示两个参数 unary,一元的,表示一个参数 1.函数式接口Supplier T get(),不接收参数,有返回值 IntSupplier,int getAsInt ...

  4. 20条IPTables防火墙规则用法! [转]

    20条IPTables防火墙规则用法! 导读 管理网络流量是系统管理员必需处理的最棘手工作之一,我们必需规定连接系统的用户满足防火墙的传入和传出要求,以最大限度保证系统免受攻击.很多用户把 Linux ...

  5. 成功配置TOMCAT的LOG4J日志系统,格式:HTML+每天以YYYY-MM-DD.LOG命名的日志文件

    关于log4j.properties文件在web项目中放的位置,找过很多,最后实践结果是: 一.web项目 二.放在src的目录里面,然后项目生成后会自动在\WEB-INF\classes文件里有份l ...

  6. VS下如何建立一个新的MFC程序 网络编程 课设 基于C++ MFC 连接数据库 小应用 小项目浅析展示

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8191036.html 这里不知道会不会有人是真的新手 新新手 不知道怎么 如何建立一个MFC ...

  7. 【算法】K-Means聚类算法(k-平均或k-均值)

    1.聚类算法和分类算法的区别 a)分类 分类(Categorization or Classification)就是按照某种标准给对象贴标签(label),再根据标签来区分归类. 举例: 假如你有一堆 ...

  8. springMVC静态资源访问

    springMVC默认是访问不到静态资源的,如css,js等,需要在xml里进行配置 保证已经配置好了 web.xml, <!-- Spring MVC servlet --> <s ...

  9. github不支持tlsv1.1后, 出现SSL connect error

    过完年回来, github不安分了, 发了博文说不支持TLSv1/TLSv1.1: Weak cryptographic standards removed, 没看到这篇博文之前, 还以为是代理问题, ...

  10. 精简版LINUX系统---wdOS

    wdOS是一个基于CentOS版本精简优化过的Linux服务器系统,网站服务器系统并集成nginx,apache,php,mysql等web应用环境及wdcp管理系统,安装完系统,所有的都安装完成装好 ...