原因是因为Vagrant安装后,默认是通过key验证的办法来验证用户的登录权限。

而由于新导入的BOX没有添加公共key所以导致验证失败。

 

先修改vagrant目录下的配置文件,改为用户名和密码登录。

依次执行以下命令

wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub -O .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
chown -R vagrant:vagrant .ssh

然后退出ssh,下面再改回配置文件,就可以使用ssh key验证的方式直接登录了

Summary:This blog talks about the new regulations and policy published by alibaba.com since September and its impact for China suppliers who use alibaba.com as main tools for global marketing.

Most of suppliers have noticed things about alibaba.com keeps changing since July, and the most common circumstance is a new regulation begin to take effect before we could fully understand how the last one works which is updated weeks ago. Change is a constant of the world as well as alibaba.com. I will not talk about the change before September, and only after.

1. RFQ are not free any more.

Previously, the more RFQs you summited to your buyers, you may get more RFQ opportunities as return for positive marketing activities and quick responses.

Things are different now, RFQ get premium upgraded, and golden supplier only get 20 quotation opportunities every month, if you need more chances for quotation, you have to pay for it. Every exceeded quotation for RFQ inquiry will cost you about ¥40, you may feel that’s some kind of daylight robbery as everyone does.

Alibaba explains RFQ comes with pay rate because of golden suppliers haven’t performance good enough for buyers’ request, and there is a strong demand of opportunity for quotation from small company who can’t afford the cost of member fee to be golden supplier and the demand is still rising. In order to maximize the output of RFQ channel, RFQ are not free any more. It also means, alibaba said, hi supplier, it’s all your fault making things go this way. Actually the real problem of RFQ channel is never supplier’s mistake, you actually couldn’t get a decent order from RFQs with good profit rate despite you have to filter the true demand from thousands of fake inquiries published by your competitors.

The service representative of alibaba.com said alibaba.com will keep taking measures to bring more traffic and buyers to RFQ sourcing, however compared with other marketing approach, cost of a single inquiry through RFQs is far more than expensive. It’s good news in another way, signing up a RFQ account and starting international business is cheap and easy now. It’s also about time for the small company to face the dog fights within RFQ channel and good luck. 🙂

2. Trade Insurance order complete ratio matter your rank now.

For convenient purpose, Trade Insurance order shorted as TIO instead below.

TIO ratio is official on-line and affects on all suppliers and becomes one of the main products rank factors. In early days, the total amount of your complete TIO in us dollars is one of main rank factors, things are different now. You got 2 main rank factors came from Trade Insurance Orders’ performance.

Affect date: October 14th

TIO Complete Ratio = TIO numbers within 180 days / (TIO Shipped+TIO Delivery Delayed+TIO Canceled )

TIO Complete Ratio Index and your total TIO amounts matters how your products rank among thousands of other suppliers’ products which mean it matters how many inquiries and what kind of inquiries you will get from alibaba.com.

TIO Complete Ratio Index impacts your transaction ranks and company credits shown as 1-5 diamonds on the page, because only a completed TIO counts and would increase your credits index, undelivered TIO is invalid and adds you negative grade.


Tips:

  • If possible, completing your orders through trade insurance and one-touch, which could ensure your inquires reach larger quantity and better quality.
  • Do not cancel TIO after payment collected or in anther way, cancel TIO and refund the buyer through other payment method.

3. Supplier fakes TIO will receive deduction as warning or even ban for rude violation.

Definition of fake TIO activities: 

  1. Suppliers buy their own products through faked alternative accounts.

  2. Buy and sell between colleagues, friends, school-mates or family members for mutual benefit.

  3. Boost sales through third-part agent or deal negotiation for buy and sale exchange.

  4. Other illegal activates to upraise transaction amount and credits.

4. Free site building tools is available within alibaba.com

These tools are designed for small business, so what could you get from this “onesite” thing?

  1. A website to display few amount products of yours with very basic functionality.
  2. A sub-domain under alibaba.com, you are free to bend with your own domain.
  3. As for SEO and overseas ADs service, sorry, they are premium and you need pay for it.

Why alibaba.com comes with this free site idea? Why this doesn’t happen 10 years ago when alibaba.com is founded?

The traffic level and user population decrease keeps happening in the past a few years, which means alibaba need more ways to keep revenue increasing in acceptable rate, so small business the less important group gains its priority.

Free tools are never cheap. As you publishing products and trying hard to get orders, you just lead your clients to alibaba.com and thousands of your competitors, why just spend a little to build your own website but your own brand, your own database, and most important, less competition and better chance for success.

5. What should I do with alibaba.com now?

  1. You must know that alibaba.com are ascending itself to be an on-line wholesale market based on credits rank, and international business relies more and more on Internet, not only for gathering information before purchase, the world web also expedite the progress of buying decision, and most important, more and more payment transact on-line.
  2. Encourage your customer to order with TIO, and try your best to complete the order. The more orders your complete, the more inquiries you will get.
  3. Use onetouch for delivery if possible, keep adding values to your credits index.

Note: This brief report is for B2B suppliers only and references limited within alibaba.com. Opinions are only individual and welcome to share your comments.

Summary:This article talks about the traffic diversity of alibaba.com.

It’s been a long time, more than 2 weeks actually, since enough data has been collected to analysis the traffic source of Alibaba International B2B platform. Today I decide to share these ideas in this blog with someone who may interest in overseas e-commerce.

To be specific, the data comes from Alexa traffic database, traffic metrics counted as per single user according to different sub-domain known as second level domain under alibaba.com.

The data was harvested at October 28th, and as is known to all, all data can only present you what already happened in a past time zone and might not be able to show you what will comes to you in the next days or months.

Talk is cheap, show me the data. So here is a summary sheet of traffic distribution status based on sub-domain divided.

Just check the traffic diversity sheet and a few simple conclusions appear themselves.

1.Where are the users landed on alibaba.com?

Only 10% of users landed on en.alibaba.com, more than 85% of users landed on products search results page, theme page like offer page, sourcing page or product detail page.

Normally the default domain name of a registered supplier ishttp://some-name.en.alibaba.com,and products url is alike http://some-name.en.alibaba.com/product/product-detailed-url…

This means very few buyers will check your shop’s home page, so it saves a lot work of yours, most of them don’t even check your profile page either.

It also shows how buyers source on Alibaba.com

Search terms -> check -> inquery

Browse theme list -> check -> inquery

2. What happened to that big piece of cake, the main 85% users?


As you can see, more than 50% of buyers search suppliers and products at offer.alibaba.com, and less than 40% of buyers look for exporters at alibaba.com, and just for your information, alibaba.com = www.alibaba.com(auto jumped to). If this information is new to you, you may need to understand what is offer.alibaba.com and how it works by just typing http://offer.alibaba.com into your browser address bar and then trying to search some products terms you interested in. Something magic will happen after that.

3. About small language buyers, what should I know?

There is no certain evidence shows small language users have gained absolute advantage in population against traditional English users. As you can see, they share 50% to 50% approximately when you check the rate of language sub-domain visitors’ amounts to all users’ numbers. However, English is still the majority language for international business, at least it’s true within alibaba.com.

Take a little look into the segmented manifest of small language users.

Among the defined small language of alibaba.com, Spanish, Russian, Arabic, French, Turkish, Portuguese, German, Italian, these 8 languages receive more than 80% of small language traffic. Things may go different ways when limitation applies to specific industry or products, if you get a segmented data, you are always welcome to share.

关键词定位的重要性与如何定位目标关键词

  • Keywords are still the lifeblood of search, which are just an integral to a successful search marketing strategy as they ever were.
  • The differences today, when it comes to keywords, is the need to understand the intent behind them. Why are searchers inputting these keywords? What are they ultimately looking to achieve?
  • Keywords researched for SEO purposes can also be used elsewhere, like in social media updates. Other departments can use this information but often do not seek it out from the SEO on the team.
  • Your most valuable keywords are often simple to find; make list of what you do, and append buy signals to them. If you sell routers, an appropriate keyword to target would logically be "buy routers".
  • If your business has so many potential keywords to target that you don't know where to start, ytr to prioritize keywords by profit margin. Which products or services make you the most money? Target those phrases first.

关键词数据的主要来源

  1. Google Adwords Keywords Planner
  2. Moz Keywords Explorer
  3. Semrush Keywords Magic Tool
  4. Ubersuggester

针对Googgle Keywords Adwords Planer的操作方式

  1. 关键词建议模式一次最多支持导入10个种子关键词。建议在整理种子关键词的时候按每10个关键词进行分组。
  2. 导入种子关键词后生成关键词的数据报告,将关键词报告按CSV格式进行导出到一个单独文件夹下。
  3. 使用一下命令将多个关键词csv数据文件合并为一个文件以方便下一步结合excel进行数据分析工作。
# 注意如果你的电脑是windows系统,就要考虑自己写一个windows的批处理文件
filelist=`ls ./*.csv`
for file in $filelist ; do  cat $file >> ./catted.csv; done
  1. 替换合并后去除无效的文件,这里需要使用正则表达式
# 这里在文本处理工具里操作,姑且写成bash方式方便查看
# 1. 替换csv文件中的 “Keyword Stats 2018-08-28 at 17_15_08”
Keyword.*?_[0-9]*_[0-9]*
# 替换一下固定文本 - 时间段
2016年8月18日 - 2018年7月31日
# 替换初第一行的csv文件表头
Keyword Currency    Avg. monthly searches   Competition Top of page bid (low range) Top of page bid (high range)    Ad impression share Organic impression share    Organic average position    In account? In plan?    Searches: Aug 2016  Searches: Sep 2016  Searches: Oct 2016  Searches: Nov 2016  Searches: Dec 2016  Searches: Jan 2017  Searches: Feb 2017  Searches: Mar 2017  Searches: Apr 2017  Searches: May 2017  Searches: Jun 2017  Searches: Jul 2017  Searches: Aug 2017  Searches: Sep 2017  Searches: Oct 2017  Searches: Nov 2017  Searches: Dec 2017  Searches: Jan 2018  Searches: Feb 2018  Searches: Mar 2018  Searches: Apr 2018  Searches: May 2018  Searches: Jun 2018  Searches: Jul 2018

  1. 这样就会得到一个所有关键词搜索量和价格的信息,剩下的就是通过对关键词进行去重,分列,分组,在结合广告的地域分区,进行广告系列、广告组的建立工作。
# 去重直接使用excel的去重
# 将竞争程度高中低未知添加分隔符|
查找 (高|中|低|未知)
替换 ||$1||
# 将展示数据(一般都为空即连续的3个短横线 -- -- --)替换为分割符
查找 (--[\x20\t\f\s][\x20\t\f\s]--[\x20\t\f\s][\x20\t\f\s]--[\x20\t\f\s][\x20\t\f\s])[\x20\t\f\s]
替换 @
# 替换后 @ 字符后面的数据是 每月的搜索数据,可以根据分列进行分割。
# 后面的数据就写了

$ brew update
$ brew tap caskroom/cask
$ brew install Caskroom/cask/java

And Java 8 will be installed at /Library/Java/JavaVirtualMachines/jdk1.8.xxx.jdk/

Check version:

$ java -version 
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode)

 

 

Install Java 7 on Mac OX

brew cask install caskroom/versions/java7

 

2015年的上半年无论阿连有多少不舍,还是一眨眼就过去了,很快阿连的团队就要开展年中总结大会了,everybody都see着阿连呢,所以这段时间阿连抓紧时间对自己上半年的业绩做总结,也对自己半年来跟进的重点客户做了一定的分析和总结,特别是针对那些原本合作意向非常大,但是最终却没有达成合作的客户。 
The first half of 2015 had passed no matter how reluctant I am. Soon, our team will conduct a mid-year summarization convention. Everybody eyes on me, so I have to take time to do summary of performance in the first half year, doing analysis and summary of my following up to key customers especially to those who have cooperation intention but didn’t cooperate finally. 

阿连一直都觉得自己挺聪明的一个人,总结起来还是发现了自己一个重大问题:过于相信客户,跟进的时候老是处于“等待”状态。阿连今天就好好展开说说这个问题: 
I always regard myself pretty clever, but to sum up, I find a big problem: I believe customer overly, always in a state of “wait” when following up. Today let me talk about this problem: 

跟进一个客户,从客户选择产品-报价-询问价格反馈-提供样板测试-了解样板测试结果-客户下单这几个步骤,都是紧紧相连的,每一个步骤都需要我们的及时跟进,适时提醒对方。如果非要把这几个步骤划分一个重要程度的话,阿连觉得最重要的步骤有两个,就是了解样板测试结果和客户下单。 
Every step of following up customers: from choose products - quote - ask price feedback - provide sample test - get the sample test results - place order, is closely linked, which needs our timely following up and draw their attention. If you divide the steps into different important degree, I think the most important steps are these two, to get the sample test results and customer orders. 

跟进和处理一件事情都讲求一个时效性,如果错过了,可能就会错失合作机会。因为有意向让我们提供样板做测试的客户都是合作意向非常大的客户,及时跟进了解客户的采购意向就非常重要了。但是如果因为没有及时跟进了解,客户恰巧搁置这个项目的话,过了最佳时期,这个时候要勾起客户的购买欲就变得比较困难了。 
Timeliness is a key of following up and dealing with matters. If missed, cooperation opportunity is likely to miss. Because those who are willing to take our sample for testing must have large cooperation intention, thus, timely follow-up customers’ purchase intention is important. But if you miss the order best time because no timely follow up and customer happens to shelve the project, it will be much more difficult to attract his desire after the best time. 

阿连有好几个客户都是收了样板后,会说正在做市场调查,还没能给到反馈,或者是现在正在忙其他的项目,所以现在没那么快开展你们的项目,让我们给他一些时间,到时候有需要他会主动联系你,如果你就这么听信客户,放心慢慢等的话,你可能等到的结果是客户最终没有采购需求了、又或许暂时不打算开展这个产品的项目了。 
A few of my customers told me that they cannot give me feedback because they are doing market research or in process of other project after receiving our samples, hoping to get more time for them, and they will contact me once in need. If you just wait patiently, the final result you may get is they don’t in the demand of purchasing or do not intend to carry out the project of this product temporarily. 

所以即使客户说需要一些时间,那在这段时间之内我们必须要跟客户保持联络,及时催促客户推动我们的项目。 
So even if the customer needs some time, we have to keep in touch with our customer in this period, timely urging customers to promote our project. 

那如何推动呢?如果你一味地跟客户强调并催客户下单的话,可能反而会引起客户的反感,这便需要一些技巧,比如你可以利用节日营销手法,如恰逢客户国家的某个重要节日,我们可以说提前让客户考虑订货趁在过节前做促销,有利于打开市场;如果离假期的时间比较近了,那就跟客户说最近因为某某节日的原因,很多客户都已经下了单,我们的生产线非常的忙,希望他们尽快确认订单。又或者采用旁敲侧击的方法,先跟客户的下属打好关系,让他帮我们适当推进一下,也不失一种有效方式。 
How to promote it? If you blindly emphasize and push to place order, customer may be disgusted with you. Some skills are necessary, such as, you can use the festival marketing gimmick. For example, as an important national holiday coincides with customers, we can advice customer that consider placing order in advance before the holidays to do sales promotion, which is good for opening the market; If holiday comes very soon, then tell them that recently because of XXX holiday, many customers have placed orders yet, so our production line is busy, hoping to confirm order as soon as possible. Or beat about the bush, playing good relations with customers’ subordinates and let them help us promote appropriately which is also a kind of effective ways. 

总之,聪明的你与我不能按照客户的套路说等就等,反而是我们应该争取主动权,想尽方式跟客户取得联络,你才能得到你想要的。 
In short, smart you and I can’t just wait as customers’ wish; instead, we should strive for the initiative, trying every effort to contact with our customers. In this way you can get what you want. 

安装git

 

brew install git

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

创建版本库

//进入git 目录
cd git-directory
//把目录变成git管理仓库
git init
//把文件添加到版本库,注意可以一次添加多个文件
git add filename.file
//将文件添加到仓库
git commit -m "add a new file to git repository"
//查看仓库当前状态
git status
//查看文件被修改的内容
git diff filename.file
//查看文件被修改的内容后便可以提交文件到仓库
git add filename.file
//显示从最近到最远的提交日志
git log
//以时间线方式显示log
git log --pretty=oneline
//在git中,HEAD表示当前版本号,上个版本是HEAD^,上上个版本是HEAD^^
//往上100个版本HEAD-100,使用reset命令返回上个版本
git reset --hard HEAD^
//回滚到以前特定某个版本
git reset --hard 【commit id】
//Git 版本回退非常快,Git在内部有个指向当前版本HEAD指针,当回退版本的时候,Git仅仅是把HEAD从当前HEAD指向目标HEAD,之后工作区文件便会被更新。
//回滚以前版本,可以使用git log查看提交的历史,以确定回退到哪个版本
//回滚将来的版本,可以用git reflog查看历史命令,以确定要回到将来的版本





API提供的特性

  • 开发者只需要使用API函数提供表结构,或是对表进行增删改操作。该特性使得模块的安装和更新简单化。

注:hook_schema_alter()修改已存在的表。

  • API使得数据库的选择不再是个问题,数据库底层的驱动API都会自动帮开发者完成。
  • 数据库递增更新, 简单一贯的CRUD API,可以方便的和CCK,VIEWS集成

 

数据类型

下表列出了字段类型和存储空间,以及每种组合可选用的底层数据库数据类型。Drupal7核心默认支持MySQL, PostgreSQL和SQLite

type size MySQL type & size/range PostgreSQL type & size/range SQLite type
serial tiny tinyint, 1 B serial, 4 B integer
serial small smallint, 2 B serial, 4 B integer
serial medium mediumint, 3 B serial, 4 B integer
serial big bigint, 8 B bigserial, 8 B integer
serial normal int, 4 B serial, 4 B integer
int tiny tinyint, 1 B smallint, 2 B integer
int small smallint, 2 B smallint, 2 B integer
int medium mediumint, 3 B int, 4 B integer
int big bigint, 8 B bigint, 8 B integer
int normal int, 4 B int, 4 B integer
float tiny float, 4 B real, 6 digits float
float small float, 4 B real, 6 digits float
float medium float, 4 B real, 6 digits float
float big double, 8 B double precision, 15 digits float
float normal float, 4 B real, 6 digits float
numeric normal numeric, 65 digits numeric, 1000 digits numeric
varchar normal varchar, 255 B (D6) or 64 KB (D7 and later)1 varchar, 1 GB varchar
char normal char, 255 B character, 1 GB (UNSUPPORTED)
text tiny tinytext, 256 B text, unlimited text
text small tinytext, 256 B text, unlimited text
text medium mediumtext, 16 MB text, unlimited text
text big longtext, 4 GB text, unlimited text
text normal text, 16 KB text, unlimited text
blob2 big longblob, 4 GB bytea, 4 GB blob
blob2 normal blob, 16 KB bytea, 4 GB blob
datetime3 normal3 datetime, years 1001 CE to 9999 CE3 timestamp, years 4713 BCE to 5874897 CE3 (UNSUPPORTED)3

注:D7的数据库API中已移去对【时间日期】数据类型的支持。如果需要存储该数据类型,需调用函数mysql_type 或 pgsql_type。 

Schema结构

drupal 文档页链接

Schema是由一个或多个表中,对应表结构的键和索引构成的结构化数组定义的。具体说来,schema由每个模块目录中,modulename.install文件中implement函数hook_schema()定义。hook_schema()会返回j结构化数组,模块定义的每一个表都会包含"tablename" => array(表的定义)这样的映射信息。数组中的键中对应的值在表创建时会被预处理。

  • 'description': 描述表的用途。引用其他表,需要将引用的表名放在{ }中。

举个栗子,node_revisions表中描述字段包含以下信息"Stores per-revision title and body data for each {node}."

  • 'fields':  字段数组用来映射'fieldnam' => array(field definition), 【field definit】数组, 描述表中的数据列,每一个列也是一个数组,相关的规格参数定义如下。

     

    • 'description': 定义字段与用途。引用其他表,需要将引用的表名放在{ }中。
    • 'type': SQL字段类型,常见的字段类型为'varchar', 'char', 'int', 'serial', 'float', 'numeric', 'text', 'blob' or 'datetime'. (如上表所示)
    • 'mysql_type', 'pgsql_type', 'sqlite_type'等, 特定数据库的数据类型,比如'mysql_type' => 'TIME' is 'pgsql_type' => 'time without time zone'.
    • 'size': 数据存储空间的大小,含以下值'tiny', 'small', 'medium', 'normal', 'big'. 可参照上表。
    • 'not null':  如为真,则表的该列不为空,默认值为false,即允许空。
    • 'default': 该字段的默认值。这里需要注意值的类型,例如你指定一个整数字段的默认值为'0',则会报错,因为'0'是字符串,不是整型。注意,二进制对象和文本对象是无法设定默认值的。
    • 'length':  char', 'varchar'或 'text' 类型数据字段的最大长度,其他类型忽略。注意varchar类型,该键的值必须定义,不可为空。
    • 'unsigned': 布尔值,决定当数据类型为数值时,是否显示数值符号。默认值为FALSE,其他字段可忽略。
    • 'precision', 'scale':  精度与小数位数。两个值都是必需的,其他字段忽略。
    • 'serialize': 布尔值,决定该字段是否会被序列化。
    • 'binary':布尔值,决定MYSQL是否强制使用大小写敏感的字符集来存储'char', 'varchar' 或 'text' 等字符型字段信息。MYSQL数据库特有,其他数据库已默认开启大小写敏感。

注:除'type'之外的其他参数都为可选,当然数值列需指定'precision' 和'scale'和'varchar' 列需指定 'length'这两种情况除外。

  • 'primary key': 数组,用来标识一个或多个键列来指定主键。

     

    • 键(key)列的值要么是命名字段的字符串类型,要么是一个包含命名字段的字符串和整数前缀的数组,其中整数前缀定义了字符串中会有多少字节或是字符会作为前缀添加到key中。如果数据库引擎主键不支持前缀设定,则该设定会被忽略。
    • 所有在主键中列出的字段都必须含有'not null' => TRUE的设定。
  • 'unique keys': 唯一键
  • 'indexes':  索引
  • 'foreign keys': 外键
  • 'mysql_suffix': 仅对drupal6适
  • 注:在Drupal 7中使用 'mysql_engine', 'mysql_character_set'和'collation'
  •  例如: 'mysql_suffix' => " DEFAULT CHARACTER SET UTF8 ENGINE = INNODB AUTO_INCREMENT=3844 "