Luckean's blog Luckean's blog
首页
  • 前端文章

    • JavaScript
  • 项目笔记

    • 项目笔记
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • flutter 布局
  • dart 数组的定义
  • java目录
  • jenkins配置
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vscode vim 结合使用
  • vscode vim 汇总
  • vscode快捷键
  • vscode自定义快捷键
  • typora 使用技巧
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档

Luckean

前端界的小学生
首页
  • 前端文章

    • JavaScript
  • 项目笔记

    • 项目笔记
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • HTML
  • CSS
  • flutter 布局
  • dart 数组的定义
  • java目录
  • jenkins配置
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vscode vim 结合使用
  • vscode vim 汇总
  • vscode快捷键
  • vscode自定义快捷键
  • typora 使用技巧
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
  • java目录
  • jenkins配置
  • 服务器流程
  • sh部署 scp免密
  • v2ray,X-ui,Xray 面板,v2rayA
  • 服务器杂学
  • docker
  • ubuntu 开启root权限登陆
  • 如何在Centos7 系统开放端口
  • pip命令安装
  • yapi mongo
  • paste
  • ssl 证书申请
  • chevereto 图床搭建
    • linux tar 解压命令
    • 服务器
    Luckean
    2023-01-05
    目录

    chevereto 图床搭建

    英文官方文档: https://chevereto-free.github.io/settings/api.html#api-v1-key

    https://nie.su/archives/2196.html#menu_index_8

    https://ch.cndrew.cn/cn/Preface/Introduction/

    https://blog.csdn.net/weixin_43494119/article/details/122401153

    https://zhuanlan.zhihu.com/p/506998147

    https://kejimm.com/139.html

    注意 https://www.jianshu.com/p/30e089044615

    # 定时任务 crontab

    https://blog.csdn.net/fenglailea/article/details/91808844

    # 安装

    docker-compose up
    
    1
    # docker-compose.yml
    version: '3'
    
    services:
      db:
        image: mariadb
        volumes:
          - database:/var/lib/mysql:rw
        ports:
          - 13306:3306
        restart: always
        networks:
          - private
        environment:
          MYSQL_ROOT_PASSWORD: --
          MYSQL_DATABASE: --
          MYSQL_USER: --
          MYSQL_PASSWORD: --
    
      chevereto:
        depends_on:
          - db
        image: nmtan/chevereto
        restart: always
        networks:
          - private
        environment:
          CHEVERETO_DB_HOST: db
          CHEVERETO_DB_USERNAME: luckean
          CHEVERETO_DB_PASSWORD: luckean88
          CHEVERETO_DB_NAME: chevereto
          CHEVERETO_DB_PREFIX: chv_
          CHEVERETO_HTTPS: 1 	#1开启https 0关闭 
        volumes:
          - ./images:/var/www/html/images:rw
          - ./config/php.ini:/usr/local/etc/php/php.ini	
        ports:
          - 17070:80
    
    networks:
      private:
    volumes:
      database:
      chevereto_images:
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44

    # 给文件夹images 权限

    chmod -R 777 /root/docker/chevereto/images
    
    1

    /root/docker/chevereto/config

    # php.ini
    upload_max_filesize = 100M
    post_max_size = 100M
    memory_limit = 3072M
    
    1
    2
    3
    4

    # 开启https

    docker-compose 文件 CHEVERETO_HTTPS改为1

    # 允许API上传至相册

    在进一步设置typora和PicGo之前呢,让我们回到Shell修改一些Chevereto的文件。

    # 工作目录
    work=~/docker/chevereto/app/html
    
    
    1
    2
    3

    docker 文件目录: /var/www/html

    将网站根目录`html`下的`./app/routes/route.api.php`复制到同目录下的`/overrides`文件夹。该步骤使得复制后的文件在不替换的情况下更新,既保存源文件,又使修改后的代码能在源代码保留的情况下运行。
    
    ​```shell
    # 复制文件
    sudo cp $work/app/routes/route.api.php $work/app/routes/overrides
    
    # 将文件改为www-data所有(没用上)
    sudo chown -R 33:33 $work/app/routes/overrides 
    
    1
    2
    3
    4
    5
    6
    7
    8

    然后修改这个复制后的文件:

    sudo vim $work/app/routes/overrides/route.api.php
    
    1

    ±对应新增删除代码:

    $version = $handler->request[0];
    $action = $handler->request[1];
    + $user = $_REQUEST['user'];	// 新增
    + $album = $_REQUEST['album'];	//新增
    ...
    // CHV\Image::uploadToWebsite($source, 'username', [params]) to inject API uploads to a given username
    - $uploaded_id = CHV\Image::uploadToWebsite($source);
    + $uploaded_id = CHV\Image::uploadToWebsite($source, $user, array('album_id'=>$album)); //新增
    
    1
    2
    3
    4
    5
    6
    7
    8

    # chevereto页面设置

    # 时间设置

    setting weiside => Default time zone 亚洲(asia) 上海(shanghai)

    https://blog.csdn.net/qq2276031/article/details/129172794

    我贴一些图,大家可以根据我的设置来搞。或者你可以自定义喽。如果我设置不对,大家也指正一下!

    可设置的项目非常多:

    img

    你可以按我的设置来初始化。如果你有什么不满意,自己微调即可。

    # 网站

    这里值得一说的,搜索、探索、随机、喜欢、粉丝禁用后,这样访客就看不到你的图片。如果你想别人看到你的图片,就可以启用。还有就是网站的隐私模式,只有选了访客开放,非注册用户才可以看到你酷酷的图床主页的图片切换!

    img

    # 用户

    因为是个人使用,所以禁用开放注册。

    img

    # 系统

    这里国内的用户要特别注意,将自动更新检查设置为禁用。不然,它可能会影响你登陆后台!这个问题曾经困扰我1年多。我开始以为是自己宝塔哪里设置的不对呢!后来发现是这个自动更新检查开启时,它会向github请求;而国内正常情况下github会封禁,无法访问。

    img

    # 图片上传

    这里红框的要多加注意。一般个人用,肯定是禁止访客上传数据的嘛!我不知道这个会不会影响API上传。如果影响,你们就启用吧!

    img

    # 主页

    这里值得一说的是,你可以在主页设置多个图片,让图床的主页好看些(没什么卵用系列)。比如我就设置了多张图片:

    img

    # 语言

    这里还有一个语言选项,我是默认的,没有动过。不知道这个有没有什么影响?

    img

    # API

    终于来到最重要的一个设置了。这个密钥你记住。它是类似于阿里云token一样的东西。有了它,可以不需要密码即可访问图床呢!这也是我们在typora里集成chevereto的最重要的参数。

    img

    # 其它

    没说到的都默认就行。

    # 设置picGo

    使用Github+picGo+typora搭建图床,保姆级教程来了 (opens new window)

    1. 确定Server端口为: 36677

    image-20230222230408028

    image-20230222230545510

    1. 设置插件 web-uploader

      image-20230222230742988

      # api地址
      https://img.hellocode.vip/api/1/upload
      
      #post参数
      source
      
      #json路径
      image.url
      
      #body格式
      {"key":"key--", "user":"luckean", "album":"1"}
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      1. typora 文件 -> 编好设置 -> 图像

    image-20230222231103474

    # 图片压缩

    使用Github+picGo+typora搭建图床,保姆级教程来了

    picGo 图片压缩 (opens new window)

    # picgo 日志成功压缩上传
    2023-02-22 23:40:59 [PicGo INFO] Before transform
    2023-02-22 23:40:59 [PicGo INFO] Transforming...
    2023-02-22 23:40:59 [PicGo INFO] 压缩:tinypng
    2023-02-22 23:40:59 [PicGo INFO] 图片地址:C:\Users\Adminis\AppData\Roaming\Typora\typora-user-images\image-20230222234059839.png
    2023-02-22 23:40:59 [PicGo INFO] 图片信息:{"fileName":"image-20230222234059839.png","extname":".png"}
    2023-02-22 23:40:59 [PicGo INFO] TinyPng初始化
    2023-02-22 23:40:59 [PicGo INFO] TinyPng开始上传
    2023-02-22 23:40:59 [PicGo INFO] 获取本地图片
    2023-02-22 23:40:59 [PicGo INFO] 使用TinypngKey:S57nby6qx2hHS3tc26Lyr0lBnGRhzWkS
    2023-02-22 23:40:59 [PicGo INFO] TinyPng 上传本地图片
    2023-02-22 23:41:05 [PicGo INFO] 获取网络图片
    2023-02-22 23:41:06 [PicGo INFO] Tinypng 上传成功
    2023-02-22 23:41:06 [PicGo INFO] 图片信息:[{"fileName":"image-20230222234059839.png","extname":".png","height":665,"width":453}]
    2023-02-22 23:41:06 [PicGo INFO] Before upload
    2023-02-22 23:41:06 [PicGo INFO] Uploading...
    2023-02-22 23:41:06 [PicGo SUCCESS] 
    https://img.hellocode.vip/images/2023/02/22/image-20230222234059839.png
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18

    无法安装compress ,点击一直在安装中 (opens new window)

    20210330194719

    问题:picgo-plugin-compress Mac系统安装失败

    //解决:成功安装
    npm install picgo-plugin-compress --save --ignore-scripts --registry=https://registry.npm.taobao.org
    //但无法使用tinypng无损压缩
    解决:imagemin,本地压缩,无需上传网上,但图片有损坏
    
    1
    2
    3
    4

    # Chevereto 内部代码 允许跨域 (没用上)

    进入 Chevereto 图床服务的文件目录,拷贝和编辑 route.api.php 文件实现允许跨域:

    cd app/routes/
    cp route.api.php overrides/route.api.php
    
    1
    2

    对 app/routes/overrides/ 目录下的 route.api.php 进行编辑:

    // route.api.php 第二行加入以下代码,https://localhost 改为自己的 WordPress 所用域名
    header('Access-Control-Allow-Origin: https://localhost');
    header('Access-Control-Allow-Methods: POST');
    header('Access-Control-Allow-Headers: Content-Type, Accept, Authorization, X-Requested-With, Origin, Accept');
    
    1
    2
    3
    4
    上次更新: 2023/05/03, 23:16:12
    ssl 证书申请
    linux tar 解压命令

    ← ssl 证书申请 linux tar 解压命令→

    最近更新
    01
    Mac配置nginx+php
    08-23
    02
    p12文件的生成
    08-22
    03
    mac 程序安装失败解决
    08-18
    更多文章>
    Theme by Vdoing | Copyright © 2022-2023 Lucking | 粤ICP备2022078904号-1
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式