• mynote server
  • workman
  • mynote test/dev server
  • mynote online server
  • 重启后检查服务
  • logs
  • mysql log or log ana 的问题?
  • logs/空间清理
  • mynote 排错 server
  • nginx 500
  • vm 中 nginx
  • host 中 nginx
  • mynote 清空数据 test
  • mynote 开机自启动 start.sh
  • mynote online 服务器迁移
  • 图片迁移
  • mynote host nginx
  • host nginx install & config
  • mynote host nginx for https
  • mynote server
    aliyun 阿里云 
    aliyun-servers 
    mynote server 
    nginx 
    gogs 

    workman

    workerman usage 
    cd mynote/art_workman
    php start.php stop
    cd mynote/art_workman
    php start.php start -d
    lv1= lv2= type=

    mynote test/dev server

    lv1= lv2= type=

    mynote online server

    mysql port=60005
    root:rootuiuirtrt45..
    reader:readerskfj;askdfjwe..
    lv1= lv2= type=

    重启后检查服务

    mynote checks 
    netstat -anopt |grep mysql| grep LISTEN
    netstat -anopt |grep redis| grep LISTEN
    netstat -anopt |grep php-fpm| grep LISTEN
    netstat -anopt |grep nginx| grep LISTEN
    netstat -anopt |grep gogs| grep LISTEN
    netstat -anopt |grep java| grep LISTEN
    netstat -anopt |grep WorkerMan| grep LISTEN
    cmp E:\uninote\start-check1.txt & E:\uninote\start-check2.txt
    sample output:
    tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1354/mysqld         off (0.00/0/0)
    tcp        0      0 127.0.0.1:6379              0.0.0.0:*                   LISTEN      1010/redis-server 1 off (0.00/0/0)
    tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      1429/php-fpm        off (0.00/0/0)
    tcp        0      0 0.0.0.0:81                  0.0.0.0:*                   LISTEN      1425/nginx          off (0.00/0/0)
    tcp        0      0 0.0.0.0:82                  0.0.0.0:*                   LISTEN      1425/nginx          off (0.00/0/0)
    tcp        0      0 0.0.0.0:85                  0.0.0.0:*                   LISTEN      1425/nginx          off (0.00/0/0)
    tcp        0      0 0.0.0.0:3000                0.0.0.0:*                   LISTEN      1482/./gogs         off (0.00/0/0)
    tcp        0      0 0.0.0.0:9200                0.0.0.0:*                   LISTEN      1503/java           off (0.00/0/0)
    tcp        0      0 0.0.0.0:9300                0.0.0.0:*                   LISTEN      1503/java           off (0.00/0/0)
    tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN      1454/WorkerMan      off (0.00/0/0)
    tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      1628/node /usr/node off (0.00/0/0)

    logs

    /home/www/wwwlogs
    log parser/ana 
    mynote tool links 
    lv1= lv2= type=

    mysql log or log ana 的问题?

    可能是 log ana 的数据量太大了,然后被搜索引擎的蜘蛛访问了
    lv1= lv2= type=

    logs/空间清理

    磁盘空间统计 du df 
    zentao 空间清理 
    log_analysis/ana_logs.txt
    runtime/logs/logs.txt
    /tmp/mysql.log  清理sh:
    cd /etc/init.d
    ./mysql stop
    cd /tmp
    echo "" > mysql.log
    cd /etc/init.d
    ./mysql start
    再依次postman中 删除mynote索引、初始化es、重新索引全部文章。
    mynote logs
    git logs
    rm -f `find . -name HEAD|grep logs`
    lv1= lv2= type=todo
    每个git仓库的HEAD日志也会很大
    $ cat .git/HEAD
    ref: refs/heads/master
    checkout master 需要检测,会导致log很大。
    lv1= lv2= type=

    mynote 排错 server

    mynote checks 
    logs/空间清理 
    服务都启动的了?mynote online server 
    logs:
    mynote tool links 
    本地开发,卡死,api request network 一直 pending:
    gogs、es等放在虚拟机中的服务,要确认能否访问。vm 双网卡不同子网问题 
    centos vm register 
    webhooks 排错记录 

    nginx 500

    - 一共用到了两个 nginx,可以根据版本号初步判定是哪个 nginx 500了。

    vm 中 nginx

    # nuxt 没有启动
    [error] 767#0: *138 connect() failed (111: Connection refused) while connecting to upstream, client: 172.17.0.1, server: t3.uninote.com.cn, request: "GET / HTTP/1.0", upstream: "http://127.0.0.1:8888/", host: "127.0.0.1:10020"

    host 中 nginx

    # docker 没有 listen 对应对口
    2020/10/28 17:01:28 [error] 3489#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 171.214.218.38, server: t3.uninote.com.cn, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:10020/", host:"t3.uninote.com.cn"
    # docker listen 了对应端口,但转发端口不通
    2020/10/28 17:02:27 [error] 3489#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 171.214.218.38, server: t3.uninote.com.cn, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:10020/", host: "t3.uninote.com.cn"
    # vm nginx 正常,但 nuxt 没有启动,此时 error log 没有输出,只有 access-log 有输出:
    171.214.218.38 - - [28/Oct/2020:17:08:25 +0800] "GET / HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36"

    mynote 清空数据 test

    tmp_path=/tmp/mynote_init.sql
    cat /home/www/mynote/sql/*.sql > $tmp_path
    sed -i "s/CREATE DATABASE*/-- /" $tmp_path
    mysql -u root -proot <<ENDTAG
    use mynote
    source $tmp_path
    ENDTAG
    -- todo 清空 日志记录数据。。 es 数据
    su - www -c '
    cd /home/www/mynote
    rm -rf /home/www/mynote/basic/web/docs
    git reset --hard
    '
    lv1= lv2= type=

    mynote 开机自启动 start.sh

    /etc/rc.local 注意是否有可执行权限? linux 环境变量 env 
    linux deamon process; background; nohup 
    重启后检查 
    see all.sh
    # for vm centos
    # service iptables stop
    # 7
    systemctl stop firewalld
    # debug时打开排错,然后在shell中设置PATH为下面的输出值,模拟启动时的环境
    # echo $PATH > /tmp/start_env.log
    # 设置需要的 PATH
    export PATH=/usr/node10/bin/:/usr/local/nginx/sbin/:/usr/local/php/sbin/:$PATH
    export LANG=en_US.UTF-8
    TZ='Asia/Shanghai'; export TZ
    nginx
    php-fpm
    rm -f /var/run/redis_6379.pid
    cd /etc/init.d
    ./redis start
    ./mysql start
    # 自启动的 workman 有各种诡异问题,不再自启动
    # su - www -c '
    # cd /home/www/mynote/art_workman
    # php start.php start -d
    # '
    su - git -c '
    	cd /home/git/gogs
    	nohup ./gogs web &
    '
    #su - es -c '
    #        cd elasticsearch-6.7.1
    #        nohup bin/elasticsearch &
    #'
    #su - es -c '
    #        cd kibana-6.7.1-linux-x86_64
    #        nohup ./bin/kibana &
    #'
    # front server:
    cd /home/www/front/
    #pm2 start npx -- nuxt start
    PM2_HOME=/root/.pm2 pm2 start node -- node_modules/nuxt/bin/nuxt.js start
    # yii queue
    su - www -c '
    cd /home/www/mynote/basic
    nohup yii queue/listen &
    '
    # docker 中需要
    service sshd start
    # for cyb_all's pic
    cd /home/www/fh_html2
    nohup ./update.sh &
    lv1= lv2= type=

    mynote online 服务器迁移

    date:2019-11-10
    〖E:\uninote\mynote-online-data\2019-11-10-迁移〗
    批量切换 origin:
    cd /home/www/mynote/basic/web/docs/%1-n git remote set-url origin git@127.0.0.1:%1/%1
    cd /home/www/mynote/basic/web/docs/1092516318
     git remote set-url origin git@127.0.0.1:1092516318/1092516318
    gogs 复制密码:
    fa:root123.
    数据库密码

    图片迁移

    # v3,共享、md5
    ln -s /home/www/mynote/basic/web/docs/__pic /home/www/front/static/__pic
    # 头像
    ln -s /home/www/mynote/basic/web/upload_pic /home/www/front/static/upload_pic
    # v2,进每个用户各自的 git
    ln -s /home/www/mynote/basic/web/docs /home/www/front/static/docs
    # /home/www/front/static 三个软链接 + link 目录:
    # 第一版存放地址
    link/take/lib/uploads
    # 第二版
    docs -> /home/www/mynote/basic/web/docs
    # 第三版(当前版本)
    __pic -> /home/www/mynote/basic/web/docs/__pic
    # 头像
    upload_pic -> /home/www/mynote/basic/web/upload_pic
    # fa 上传:
    http://uninote.com.cn:444/uploads/20190522/a2efd5ed704adee2ffba6c9d2569d181.png
    lv1= lv2= type=
    统一图片存放地址,引用尽量使用不带host的绝对路径
    on.rongyipiao.com 问题:批量替换
    先做好图片转储 功能,统一
    lv1= lv2= type=

    mynote host nginx

    E:\back\git\mynote\nginx

    host nginx install & config

    nginx 安装包 
    curl -o nginx.rpm http://pan.dajxyl.com/rpm/dajx_nginx-1.18.0-1.noarch.rpm
    rpm -ivh nginx.rpm
    nginx
    cd /usr/local/nginx/conf
    mkdir vhost
    vi nginx.conf
    >> include vhost/*.conf;

    mynote host nginx for https

    upstream nuxtserver{
        server 127.0.0.1:20030;
        keepalive 64;
    }
    server{
        listen 80;
        if ($scheme = http){
    	return 301 https://$host$request_uri;
        }
        listen 443 ssl;
        server_name pre.uninote.com.cn;
        ssl_trusted_certificate     /etc/letsencrypt/live/t4.uninote.com.cn/fullchain.pem;
        ssl_certificate             /etc/letsencrypt/live/t4.uninote.com.cn/fullchain.pem;
        ssl_certificate_key         /etc/letsencrypt/live/t4.uninote.com.cn/privkey.pem;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_stapling on;
        ssl_stapling_verify on;
        resolver 8.8.8.8 8.8.4.4 valid=600s;
        resolver_timeout 6s;
        location / {
            proxy_set_header Host      $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_pass http://nuxtserver;  #这里对应上面upstream中新建的服务名
            index index.html index.htm;
        }
    }