澳门新葡萄京娱乐场 10

帝国CMS上传生成的随机文件名前面增加自定义前缀

查找:

自动生成目录


1)终端bolg文件下,输入新建博客代码
 $ hexo new 'filename'

改成:

七牛的特性


  • 一般的云盘是双向数据同步空间服务,如何解释呢?举个例子
    • 百度云、微云、360网盘、dropbox 等就是使用双向数据同步空间服务
    • 澳门新葡萄京娱乐场,你在本地增加一个 cnfeat.txt 文件
    • 同步之后,云盘多了一个 cnfeat.txt 文件
    • 你在本地删除一个 cnfeat.txt 文件
    • 同步之后,云盘少了一个 cnfeat.txt 文件
  • 七牛云 不同于以上的 云盘,它是 单向数据同步服务
    • 何为 单向数据同步服务? 简单地来说,你可以想像 七牛云空间
      就像是你私人邮箱,你将本地文件发送到你的邮箱,七牛云有了副本,就算本地的文件删除了,七牛云上的文件依然存在,除非你登陆七牛删除。
    • 你在本地增加一个 cnfeat.txt 文件
    • 同步之后,七牛云多了一个 cnfeat.txt 文件
    • 你在本地删除一个 cnfeat.txt 文件
    • 同步之后,七牛云的 cnfeat.txt 文件依然还在!
2)输入安装hexo的代码(此处安装时有可能会提示输入系统管理员密码)
$ sudo npm install -g hexo

$ hexo init

澳门新葡萄京娱乐场 1

$ hexo s

澳门新葡萄京娱乐场 2

修改方法:

参考


最小七牛使用法则

如何为七牛云生成索引目录?

日常运维流程

2)查看新建的仓库(repOSitory)
  • ###### 可以回到github个人首页点击右侧的仓库区

澳门新葡萄京娱乐场 3

  • ###### 进入后在step1处选择并复制http地址,注意此时step2处应该是空的
16css.com_38764fe9e8e0d6bdfa8b01c5372a87af.jpg

命令行上传


  • 获取命令行上传工具

qrsync
是一个根据七牛云存储API实现的简易命令行辅助上传同步工具,支持断点续上传,增量同步,它可将用户本地的某目录的文件同步到七牛云存储中,同步或上传几百GB甚至上TB的文件毫无鸭梨。

在qrsync
命令行上传同步工具页面,选择相应的系统,下载qrsync 命令行辅助同步工具,解压压缩包,只用到里面的qrsync文件,放在准备好的目录/Users/chao/7niu

  • 准备配置文件

用于qrsync读取信息,例如,上传时的认证、本地待同步的文件夹、上传到的七牛空间名

/Users/chao/7niu中创建一个后缀为.json的配置文件,名称随意,内容如下:

以下是最简单的必填内容实例:

{
    "src": "/home/your/sync_dir",
    "dest":"qiniu:access_key=<AccessKey>&secret_key=<SecretKey>&bucket=<Bucket>",
    "debug_level": 1
}

src是本地存放资源的目录,我是直接在/Users/chao/7niu下创建一个目录存放待上传的资源

<AccessKey><SecretKey>的获取:登录后,点击右上角账号,选择左侧密钥,在右侧可以看到,直接复制过来

<Bucket>就是之前创建的空间名称

填好后的内容如下(用实际值替换<``>和里面的内容):

{
    "src": "/Users/chao/7niu/sync",
    "dest":"qiniu:access_key=my_access_key&secret_key=my_secret_key&bucket=my_space_name",
    "debug_level": 1
}

更多选项见官网说明

放一些文件进去,可以直接在sync中创建文件夹,用于分类,上传时会自动将文件夹名添加到文件名中作为前缀

  • 上传本地指定目录中的资源

/Users/chao/7niu目录下,运行:

./qrsync conf.json

需要注意,在七牛的空间中,是没有目录的概念的,上传到七牛空间的文件,文件名中可以包含斜杠/,让你感觉像目录结构(比如:a/b/c/d.txt),但它只是看起来像
a 目录下的 b 目录下的 c 目录下的文件
d.txt。实际上,七牛的服务器端是不存在
a、b、c这三个目录的,也没法创建目录。

4)其他博客设置
  • ###### title:博客名称

  • ###### subtitle:博客副标题

  • ###### description:博客描述

  • ###### author:作者

  • ###### language:语言(简体中文是zh-CN)

一共两处,第一处是表单上传文件的。第二处是编辑器里远程保存文件的。

准备


  • 本地目录,存放所有相关文件

➜  7niu pwd
/Users/chao/7niu

其中,新建sync文件用于在本地存放资源,目录/home/your/sync_dir

  • 七牛云空间,创建一个空间,空间名后面会用到
2)完成后便能刷新博客网页看到新更新的内容了

打开/e/class/connect.php 文件

获取需要的文件

需要的文件:

  • footer-7niu.html
  • gen4idx.py

链接:
http://pan.baidu.com/s/1i49VE9R
密码: w4gx

下载解压后,将上面的两个文件放入本地的资源目录/Users/chao/7niu/sync

2)输入编译代码
$ vim ~/.ssh/id_rsa.pub
$r[filename]=$r[insertfile].$r[filetype];

通过 url 访问文件

通过文件的URL访问:

登陆,选择空间,右上角空间设置,左侧域名设置,可以看到域名

域名/文件名就是文件的
URL,根据上面对七牛文件名的说明,目录包含在文件名中

5)step3处就是你的博客地址

帝国CMS默认上传文件后生成一个32位的随机名称。通过本教程可以在这个32位的随机名称前增加固定名称。

通过 url 访问空间

直接访问空间的域名会报错

{"error":"Document not found"}

有两个步骤需要做:

因为空间的 html
页面默认是关闭的,需要进入空间,在空间设置基本设置中开启IndexPage

开启功能后,空间中的index.html(或index.htm)文件将会作为默认首页进行展示。当然不能手动创建、编辑index.html文件,所以我们需要完成接下来的自动生成目录

1)打开blog文件夹下的_config.yml文件

那么生成后的文件名称就是:

自动生成index.html

在资源目录中,运行命令

python gen4idx.py ./ footer-7niu.html NULL

gen4idx.py是生成index.html的脚本

./是资源所在的目录,这里是指当前目录

footer-7niu.htmlindex.html的模板

NULL,这里表示空,可以指定不将哪些文件显示在页面

运行后,会在资源目录的每个文件夹下生成一个index.html文件

2)安装完毕后,输入获取代码
 $ hexo g

比如,增加 16css.com_

遇到的坑


一开始从qrsync
命令行同步工具下载同步工具,下载后的文件夹名称qiniu-devtools-darwin_amd64-v2.6.20131211,但使用了qrsync
命令行上传同步工具的conf.json内容格式。

结果运行报错:

➜  7niu ./qrsync conf.json
Syncing failed: missing bucket, it must be specified in the configuration file.

后来统一使用qrsync
命令行上传同步工具这个页面下载的同步工具和conf.json内容格式,文件夹名称qiniu-devtools-darwin_amd64-v3.1.20151125.tar,同步成功

原因:conf.json内容的格式不同,所以读取方式不同,必须匹配

1)创建新的仓库(repOSitory)
  • ###### 点击用户左侧的+号菜单中的New repOSitory

  • ###### 在repOSitory name中输入二级域名,格式请严格遵照username.github.io

  • ###### ps:username填写github的登录用户名,否则上线的时候会报错

  • ###### 是否公开选项可以选取Public

  • ###### 勾选step4处,会自动生成一份可编辑的README.md文件

  • ###### 点击create repOSitory生成仓库完毕

澳门新葡萄京娱乐场 4

$r[filename]=16css.com_.$r[insertfile].$r[filetype];
1)输入获取代码,回车直到出现图片所示图形为止
$ ssh-keygen

澳门新葡萄京娱乐场 5

1)完成编辑后,在终端上依次重复以下代码(此时必须先将编辑器关闭,否则会出现获取错误)
 $ hexo g $ hexo d
3)最后输入上传代码
 $ hexo d
1)进入终端,输入git上传插件安装代码(安装时会提示输入github用户名及密码)
 $ npm install hexo-deployer-git --save
4)进入到github页面设置SSH口令
  • ###### 点击用户下拉菜单中的settings

  • ###### 点击左侧的SHH and GPG keys

  • ###### 在Title中输入口令名称

  • ###### 在key中贴上SSH口令

澳门新葡萄京娱乐场 6

3)博客文件的后缀是.md文件,OS下推荐使用MOU编辑器mou下载地址

澳门新葡萄京娱乐场 7

2)找到最下方的type,输入git(注意冒号后面是带空格的)
1)打开OS系统终端
2)此时在bolg/source/_posts/下面会看到新建的博客

澳门新葡萄京娱乐场 8

3)repo行可能没有,需要自己输入,后面跟上github上仓库中复制的http地址(注意此时1、2两处应该是一样的username),不然上传时会报错

澳门新葡萄京娱乐场 9

4)重新在github仓库查看上传文件,此时在step2中会有之前bolg中生成的文件
3)出现SSH口令后,将红框部分复制,并在下方输入:q,随后按下回车可以退出该窗口

澳门新葡萄京娱乐场 10

发表评论

电子邮件地址不会被公开。 必填项已用*标注