作者: Jefsky

  • Typecho调用特定分类最新文章列表

    n

    调用代码

    nnnn
    <?phpn$this->widget('Widget_Archive@index', 'pageSize=8&type=category', 'mid=2')n->parse('`<li><a href="{permalink}">{title}</a></li>`');n?>n
    nnnn

    pageSize 调用的数量
    mid 分类的ID

    n
  • Ubuntu安装phpmyadmin和配置

    n

    ———————————————-安装—————————————————-
    ubuntu安装phpmyadmin有两种方法:

    nnnn

    1、apt-get 安装 然后使用 已有的虚拟主机目录建立软连接

    nnnn
    sudo  apt-get install  phpmyadminnnsudo  ln-s /usr/share/phpmyadmin/      /var/www/pman
    nnnn

    2、手动上传

    nnnn

    在官网https://www.phpmyadmin.net/下载phpmyadmin软件包,使用 filezilla 上传到 /var/www/pma (pma自己创建)

    nnnn

    使用 ip/pma 查看phpmyadmin

    nnnn

    也还可以给phpmyadmin配置虚拟主机 (补习:ubuntu apache2 如何配置虚拟主机(域名相关)

    nnnn

    ———————————————-配置—————————————————-

    nnnn

    配置MySQL的remote access(远程访问)

    nnnn

    默认情况下mysql只能是本机访问(127.0.0.1/localhost)
    如果你是通过远程来访问的话就需要配置remote access,通过ip或者在客户端上使用navicate访问都属于remote access

    nnnn

    使用sudo vim /etc/mysql/my.cnf
    修改 bind-address 白名单 用’#’注释掉就好了

    nnnn

    然后进入phpmyadmin添加一个可以使用公网访问的用户
    最后别忘了重启msyql

    nnnn
    sudo service mysql restartn
    n
  • alternativeto 帮你查找代替软件

    n

    就像它的名字那样,”可供选择的、替代的”,没错,这就是一个替代品网站,如果觉得哪个软件不好用,或者嫌安装麻烦,或者购买太贵,到这个网站搜一下,就可以提供很多可供选择的替代产品。

    nnnn
    n
    nhttps://alternativeto.net/n
    n
    n
  • Linux后台命令 nohup 和 & 的使用说明

    n

    nohup 命令说明

    nnnn

    nohup 是 no hungup 的缩写,就是“不挂断,一直运行”,顾名思义就是后台运行

    nnnn

    很多时候我们通过终端工具去远程执行linux脚本的时候,或多或少都会遇到网络问题导致客户端失去连接,终端断开,程序运行一半就意外结束,或者,有些程序需要一直挂在后台运行,即使退出了客户端,这时候就需要用到nohup命令了.

    nnnn

    语法格式

    nnnn

    nohup Command [ Arg ... ] [ & ]

    nnnn
      n
    • nohup 命令运行由 Command 参数 和 Arg参数 指定的命令,忽略所有挂断(SIGHUP)信号。
    • nnnn
    • 如果想要在运行后台中的 nohup 命令,则要添加 & ( 表示 “and” 的符号)到命令的尾部。
    • nnnn
    • 如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
    • n
    nnnn

    只用 nohup

    nnnn

    无法标准输入(控制台无法输入),标准输出 和 错误信息保存到 nohup.out文件里面,关闭客户端后,命令仍然会运行。

    nnnn

    nohup Command

    nnnn

    例如

    nnnn

    将nohup sh test.sh 任务放到后台,关闭标准输入,终端不再能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out 文件,即使关闭xshell退出后,当前session依然继续运行。

    nnnn

    只用 &

    nnnn

    可以标准输入(控制台可以输入),但会丢失 标准输出 和 错误信息,关闭客户端后,命令会就马上停止。

    nnnn

    sh Command &

    nnnn

    例如

    nnnn

    将sh test.sh & 任务放到后台 ,关闭 xshell,对应的任务也跟着停止。

    nnnn

    nohup 和 & 配合使用(推荐使用)

    nnnn

    可以标准输入(控制台可以输入),也不会丢失标准输出和错误信息,并将输出信息保存到 nohup.out 中,关闭客户端后命令仍然会运行。

    nnnn

    nohup Command [ Arg ... ] &

    nnnn

    nohup sh test.sh &

    nnnn

    例如

    nnnn

    nohup sh test.sh & 命令在后台执行,可以使用标准输入,终端能够接收任何输入,标准输出 和 错误信息 默认保存到当前目录下的 nohup.out 文件,即使关闭xshell退出当前session依然继续运行。

    nnnn

    nohup ./startWeblogic.sh & 意思是即使退出ssh界面,命令仍然在后台执行,并且打印日志到 nohup.out 文件中,当然也可以将nohup.out 的输出转向到其他文件,需要使用 重定向 。

    nnnn

    nohup、 & 、 重定向(推荐使用)

    nnnn

    使用 nohup sh test.sh & 命令时,默认是将信息输出到 nohup.out 文件中。 但是在实际工作中,我们想把日志信息输出到某个具体文件中,可以下面的命令。

    nnnn

    nohup command >logfile 2>&1 &

    nnnn

    上面命令可以拆分成三部分 nohup command & 、 >logfile 和 2>&1 。

    nnnn

    nohup command & :这个命令上面已经介绍过了,就是后台运行命令;

    nnnn
    n

    logfile :将 command 运行的日志 重定向 写入到 logfile 文件中,即输出内容 不打印到屏幕上,而是输出到 logfile 文件中。
    2>&1 是将 错误信息(2) 重定向到标准输出(&1)。而 标准输出 默认是写入到 file 文件中,所以 错误信息(2)、 标准输出 都 写入到 file 文件中。
    例子:

    n
    nnnn

    nohup starMailWeb.sh > mail.log 2>&1 &

    nnnn

    后台运行 starMailWeb.sh ,并且将 标准输出(1)、标准错误(2) 等日志 写入到 mail.log 文件中。

    nnnn

    2>&1 相关的参数说明:

    nnnn

    /dev/null 表示空设备文件,

    nnnn

    0 表示 stdin (standard input) 标准输入,

    nnnn

    1 表示 stdout (standard output) 标准输出,

    nnnn

    2 表示 stderr (standard error) 标准错误信息;

    nnnn
    n

    file 表示将 标准输出(1) 输出到 file文件,也就相当于 1>file ;

    n
    nnnn

    2>error : 将 错误信息(2) 重定向到 error文件中 ;

    nnnn

    2>&1 : 将 错误信息(2) 重定向 到 标准输出(1) ;

    nnnn

    2>&1 >logfile :错误信息(2) 重定向 到 标准输出(1) ,标准输出(1) 重定向 到 文件file ,等于 1>logfile 2>&1 ,即 标准输出(1) 重定向 到 logfile 文件中,错误信息(2) 重定向 到 标准输出(1) 。

    nnnn

    & 放在命令到结尾,表示后台运行,防止终端一直被某个进程占用,这样终端可以执行别到任务,配合 >file 2>&1 可以将 log信息保存到某个文件中,但如果终端关闭,则进程也停止运行。如 command > file.log 2>&1 & 。 ( 参考 2、只使用 &)

    nnnn

    知识扩展

    nnnn

    清空 nohup.out

    nnnn

    如果命令一直运行下去,nohup.out会一直自己增长下去,如果你的服务器硬盘不给力的话,很容易把应用也挂掉(硬盘没空间 ,啥都玩不转),但是又不能一味的直接删。因为直接删除,可能会造成应用无法打印后续的错误日志,该问题常见于weblogic服务器,jboss服务器等这些大型中间件,这个在生产环境上要尤为注意。

    nnnn

    因此就有了我们不停止服务直接,清空nohup.out文件的方法。
    下面是两个种不用停止WEB服务就可以清空nohup.out的命令。

    nnnn

    第一种:cp /dev/null nohup.out
    第二种:cat /dev/null > nohup.out

    nnnn

    解决 nohup.out 文件过大

    nnnn

    nohup 的重定向,一劳永逸解决 nohup.out 文件过大的问题
    以下是定义日志打印级别,除了高于级别2的告警信息记录到log文件外,其余直接不记录

    nnnn

    //只输出错误信息到日志文件
    nohup ./program >/dev/null 2>log &

    nnnn

    //什么信息也不要
    nohup ./program >/dev/null 2>&1 &

    n
  • 如果将域名解析到服务器的端口上

    n

    利用隐形URL记录类型就好了

    nnnn

    步骤

    nnnn
      n
    • 登陆你的域名解析服务
    • nnnn
    • 添加记录
    • nnnn
    • 记录类型 选择隐形URL
    • nnnn
    • 主机记录 按照你的需要填写
    • nnnn
    • 记录值 就填写你的域名:端口,如https:www.jefsky.com:80
    • n
    nnnn

    保存就好了

    n
  • 最新版typecho新评论微信提醒通知插件Comment2Wechat

    n

    一、简介

    nnnn

    「Server酱」,英文名「ServerChan」,是一款「程序员」和「服务器」之间的通信软件。

    nnnn

    说人话?就是从服务器推报警和日志到手机的工具。

    nnnn

    二、使用方法

    nnnn
      n
    1. 下载并安装插件
    2. n
    nnnn

    插件下载地址:点击此处

    nnnn
      n
    1. 申请server酱SCKEY
    2. n
    nnnn

    (1)进入server酱主页:点击此处
    (2)用GitHub账号登入server酱网站,没有请自行申请
    (3)打开「发送消息」页面,就能获取一个SCKEY
    (4)点击「微信推送」,扫码关注同时即可完成绑定

    nnnn
      n
    1. 使用typecho插件
    2. n
    nnnn

    进入到typecho插件页,启用Comment2Wechat,进入设置页,将刚才获取的SCKEY粘贴进去,确定即可。

    nnnn
      n
    1. 设置成功
    2. n
    nnnn

    此时,工作已全部完成。可以去自己的网站测试评论,看看微信是否有提示。如有疑问,请在下方评论!

    n
  • git如何新建分支

    n
      n
    1. 切换到基础分支,如主干git checkout master
    2. nnnn
    3. 创建并切换到新分支git checkout -b abcgit branch可以看到已经在abc分支上
    4. nnnn
    5. 更新分支代码并提交git add *git commit -m “init abc”git push origin abc
    6. nnnn
    7. 在git代码管理界面经可以看到abc分支了
    8. n
    n
  • 百度地图实现仿链家(房天下)地图搜房(地图找房)功能

    n

    findHouseByMap 地图找房

    nnnn

    本项目仅供学习参考

    nnnn

    运用百度地图api仿照房天下地图找房

    nnnn

    项目地址:https://github.com/Jefsky/findHouseByMap

    nnnn

    演示地址:https://www.jefsky.com/demo/findHouseByMap/

    nnnn

    完成进度

    nnnn
    * 缩放检索n* 拖拽检索n* 行政区域划分n
    nnnn

    项目图示

    nnnn
    ![Image text](https://github.com/Jefsky/findHouseByMap/blob/master/img/20200305145548.png)n![Image text](https://github.com/Jefsky/findHouseByMap/blob/master/img/20200305145548.png)n![Image text](https://github.com/Jefsky/findHouseByMap/blob/master/img/20200305145548.png)nn
    nnnn

    百度地圖api

    nnnn

    http://lbsyun.baidu.com/cms/jsapi/reference/jsapi_reference_3_0.html#a0b0

    nnnn

    项目需求分析

    nnnn

    房天下

    nnnn

    PC

    nnnn

    https://dg.esf.fang.com/map/
    https://www.fang.com/hezuo_file/house/hezuo2014/search.htm
    https://static.soufunimg.com/map/ditu/js/map.js?v=2019122701

    nnnn
    alias: {n            jquery: 'jquery/jquery-1.11.1.min',n            BMapLib: 'bmap/BMapLib-min'n        },
    nnnn

    百度地图

    nnnn

    关键js

    nnnn

    https://static.soufunimg.com/map/ditu/js/??bmap/BMap.js?_2019122701,autodiv/autodiv.js?_2019122701,modules/esf/SFMap.js?_2019122701,modules/esf/dhjs.js?_2019122701,modules/esf/suggest.js?_2019122701
    https://static.soufunimg.com/map/ditu/js/??modules/SFUtil.js?_2019122701,modules/esf/MapApi.js?_2019122701,lazyload/lazyload.js?_2019122701,scrollbar/scrollbar.js?_2019122701

    nnnn

    接口

    nnnn
      n
    • 城市地区经纬
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?a=getDistArea&city=gzn
    nnnn
      n
    • 城市地铁
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?a=getSubway&city=dgn
    nnnn
      n
    • 城市地区楼盘套数接口
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?mapmode=y&district=&subwayline=&subwaystation=&price=&room=&area=&towards=&floor=&hage=&equipment=&keyword=&comarea=&orderby=30&isyouhui=&x1=113.097682&y1=22.912863&x2=114.20152&y2=23.173058&newCode=&houseNum=&schoolDist=&schoolid=&ecshop=&groupedmode=4&PageNo=1&zoom=12&a=ajaxSearch&city=dg&searchtype=cityn
    nnnn
      n
    • 地区楼盘套数接口
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?mapmode=y&district=800&subwayline=&subwaystation=&price=&room=&area=&towards=&floor=&hage=&equipment=&keyword=&comarea=&orderby=30&isyouhui=&x1=113.515279&y1=22.97771&x2=113.791238&y2=23.042775&newCode=&houseNum=&schoolDist=&schoolid=&ecshop=&groupedmode=4&PageNo=1&zoom=14&a=ajaxSearch&city=dg&searchtype=n
    nnnn
      n
    • 地区楼盘接口
    • n
    nnnn

    https://dg.esf.fang.com/map/?mapmode=y&district=100&subwayline=&subwaystation=&price=&room=&area=&towards=&floor=&hage=&equipment=&keyword=&comarea=17408&orderby=30&isyouhui=&x1=113.67489&y1=23.008064&x2=113.74388&y2=23.02433&newCode=&houseNum=&schoolDist=&schoolid=&ecshop=&groupedmode=4&PageNo=1&zoom=16&a=ajaxSearch&city=dg&searchtype=loupan
    https://dg.esf.fang.com/map/?mapmode=y&district=&subwayline=&subwaystation=&price=&room=&area=&towards=&floor=&hage=&equipment=&keyword=&comarea=&orderby=30&isyouhui=&x1=113.584556&y1=23.049196&x2=113.722536&y2=23.083244&newCode=&houseNum=&schoolDist=&schoolid=&ecshop=&groupedmode=4&PageNo=1&zoom=15&a=ajaxSearch&city=dg&searchtype=

    nnnn
      n
    • 拖拽
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?mapmode=y&district=&subwayline=&subwaystation=&price=&room=&area=&towards=&floor=&hage=&equipment=&keyword=&comarea=&orderby=30&isyouhui=&x1=113.804792&y1=23.037902&x2=113.873782&y2=23.057623&newCode=&houseNum=&schoolDist=&schoolid=&ecshop=&groupedmode=4&PageNo=1&zoom=16&a=ajaxSearch&city=dg&searchtype=othern
    nnnn
      n
    • 接口样本
    • n
    nnnn
    nhttps://dg.esf.fang.com/map/?mapmode=y&district=800&keyword=&orderby=30&x1=113.515279&y1=22.97771&x2=113.791238&y2=23.042775&groupedmode=4&PageNo=1&zoom=14&a=ajaxSearch&city=dg&searchtype=n
    nnnn

    小程序

    nnnn

    腾讯地图

    nnnn

    APP

    nnnn

    百度地图

    nnnn
    nnnn

    链家

    nnnn

    PC

    nnnn
    nhttps://dg.lianjia.com/ditun
    nnnn
    <script>nljConf = {n        city_id: '441900',n        city_abbr: 'dg',n        city_name: '东莞',n        channel: 'ditu',n        feroot: '//s1.ljcdn.com/feroot/',n        page: 'ditu_index',n        pageConfig: {"ajaxroot":"https:\/\/ajax.api.lianjia.com\/","imAppid":"LIANJIA_WEB_20160624","imAppkey":"6dfdcee27d78b1107fceeca55d80b7bd"}n    };n    </script>n<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=dASz7ubuSpHidP1oQWKuAK3q"></script>
    nnnn

    https://www.idataapi.cn/product/detail/134
    https://gitee.com/liu_peng_yu/Fast-LianJia-Crawler
    百度地图

    nnnn

    小程序

    nnnn

    百度地图

    nnnn

    APP

    nnnn

    百度地图

    nnnn
    nnnn

    Q房网

    nnnn

    PC

    nnnn
    nhttps://dongguan.qfang.com/map/salen
    nnnn
    <script src="/themes/default/scripts/frontend/map/MapAround.js?qv=1579095567676" type="text/javascript"></script>nQfang.MapAround={_getPointByAngle:function(a,g,c,f){var b=111700;var e=Math.cos(f*2*Math.PI/360)*c/(b*Math.cos(g*2*Math.PI/360))+a;var d=Math.sin(f*2*Math.PI/360)*c/b+g;return new BMap.Point(e,d);}...
    nnnn

    百度地图

    nnnn

    小程序

    nnnn

    腾讯地图

    nnnn

    APP

    nnnn

    百度地图

    nnnn
    nnnn

    安居客

    nnnn

    PC

    nnnn
    nhttps://dg.anjuke.com/map/sale/?from=SearchBarn
    nnnn

    百度地图 ## 小程序 腾讯地图 ## APP 高德地图 — # 贝壳找房 ## PC https://dg.ke.com/ditu ## 小程序 腾讯地图 ## APP 百度地图 — # 地图搜租房 https://house-map.cn/#/

    n
  • 关于百度地图API覆盖物中的添加行政区划传参问题

    n

    在添加行政区划使用BMap.Boundary().get()方法时,发现返回的boundaries的值是数组,但是是一个一维数组,数组的元素是点的集合的字符串,而不是点的集合数组.
    但是在示例中,关于rs.boundaries.length的注释是’行政区域的点有多少个’,意思不是说明了boundaries数组元素应该是一个区域点的数组?
    再者,就是下面的for循环,也给人觉得是根据点来组合一个多边形.

    nnnn

    在这里,我重写了很多次,后来选择从百度给出的示例来console调试,才发现上诉的问题,所以呢,按照目前的示例,我是这样理解的:

    nnnn
      n
    • BMap.Boundary().get(name: String, callback: function) 是获取name区域的点,返回的是一个数组,但是点是一个数组字符串(为什么要强调呢,因为如果你是想自己绘制区域的话,就需要注意了,接着往下看)
    • nnnn
    • BMap.Polygon(points: Array, opts: PolygonOptions) 这是根据Array创建多边形,注意!!!这里传的不是点的数组,而是点的数组字符串!是一个区域的点的数组字符串!!!
    • nnnn
    • 下面的for循环用意,应该是当有多个行政区需要绘制时,同时绘制出来吧.
    • nnnn
    • 也有个可能Array就是相当与data[i],我看错吧
    • n
    nnnn
    function getBoundary(){       n    var bdary = new BMap.Boundary();n    bdary.get("北京市海淀区", function(rs){       //获取行政区域n        map.clearOverlays();        //清除地图覆盖物       n        var count = rs.boundaries.length; //行政区域的点有多少个n        if (count === 0) {n            alert('未能获取当前输入行政区域');n            return ;n        }n          var pointArray = [];n        for (var i = 0; i < count; i++) {n            var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#ff0000"}); //建立多边形覆盖物n            map.addOverlay(ply);  //添加覆盖物n            pointArray = pointArray.concat(ply.getPath());n        }    n        map.setViewport(pointArray);    //调整视野  n        addlabel();               n    });   n}
    n
  • linux服务器 错误代码:ERR_CONNECTION_REFUSED

    n
      n
    • 服务器拒绝了连接,相关的服务程序没开,或者防火墙挡了。这个得看看重启之后,你系统服务程序是不是开的。查看系统服务程序是否开启的两种方法:
    • n
    nnnn
      n
    1. ps -e看看是不是有你的要链接的服务程序;
    2. nnnn
    3. netstat -nltpux看看有没有在你链接的端口上有监听程序。
    4. n
    n