造了个轮子 XML 2 JSON

如何让命令行提高我们的工作效率?如何快速的用命令行解析出xml文档中需要的字段?

Mehr lesen

网页嵌入Bilibili HTML5视频播放

Bilibili好在无广告,速度也挺快,无奈B站官方的视频嵌入是Flash的形式,但B站又是支持HTML5播放的,那么问题来了,外站如何嵌入HTML5的播放形式呢?

Mehr lesen

我的毕业设计:基于新媒体技术的校园信息平台

很low的名字,但跟众多的某某系统相比个人觉得还是很有新意的,这里的新媒体技术指微信公众平台的服务号和小程序。这个信息平台包括了教务新闻、成绩、课表、考试安排和一卡通、网络自助以及快递追踪等信息。

Mehr lesen

解决hexo yilia主题在https下不友好的问题

今天把博客托管到了又拍云,然后启用了全站https,结果发现有两个js文件是通过http加载的,故而页面无法加载完美。若“加载不安全的脚本”则会使得小绿锁变成红色。。。不能忍
原因在于作者写死了http协议前缀,简单的修改下就可以了。已经发起了pull request,如果你也遇到了这个问题,不妨参考一下这里来解决

Mehr lesen

自己动手写一个PHP组件

花了两天时间把《Modern PHP》看了一遍,深有感触~~~
现在看看以前写的代码简直就是一坨屎(没看这本书之前最多是半坨屎23333)。代码风格、组件思想、包管理等等等等,无颜以对写的代码。本来也打算再次重构一些项目的,现在这种愿望更强了。。好了,废话不多说,开始着手写一个IMDb组件,这个组件用于指定一个title值,便可返回该部电影的详细信息。

Mehr lesen

phpmyadmin 在ubuntu 16.04 php7下不能使用的问题

今天重装了下系统,换了正式版的ubuntu 16.04, apt安装的nginx和php7, 在安装phpmyadmin时遇到了500的错误,很是蛋疼, 先是google了一番, 看到有可能时mbstring的问题。果然没有安装mbstring, 然后 sudo apt install php7.0-mbstring 安装, 但还是有问题。提示是mysqli的问题,再安装一下sudo apt install php7.0-mysql
也就是两条命令的事情, 希望给同样碰到这个问题的朋友一个帮助。

Mehr lesen

配置nginx + php7 + mongodb的centos服务器环境

重构、重构、重构
大三下学期了,面试某公司,结果连技术面都没过,╮(╯▽╰)╭,还是有一点打击的。不过也有打算重构一下两个小项目的,希望以此叩开实习的大门。记录一下全过程!

Mehr lesen

DES算法中子密钥的产生

DES (数据加密标准 Data Encryption Standard),因密钥长度过短及可能含有的后门引起争议,现也已经不在作为标准,由AES取代。在学了《网络安全技术》关于加密算法中的DES后,写了这一篇笔记,主要写的是DES算法中子密钥的生成算法。

1

Mehr lesen

博客换域名啦

刚才进邮箱发现域名xu42.cn已经备案审核通过了,博客域名替换了原来的blog.xuyangjie.cn

Mehr lesen

怎么使用slim-jwt-auth对API进行身份验证

这两天一直想找个机会做一下API的身份验证,就像微博那样提供接口给别人用,但又有所限制,也不会导致接口滥用。
大概一年半之前,写了个大学英语四六级成绩查询的接口(由于历史原因,此Github帐号不再使用了,新的在这里),托管在新浪云,放到了网上,也没有加任何限制,结果被一个人短时间内多次调用,真的是非常频繁,浪费了不少云豆。现在正好可以用之前写的成绩查询接口来做这个身份验证的实验。

Mehr lesen

CentOS7 编译安装 nginx php7

腾讯云出了个学生优惠,可以每月1元使用云主机,买了一台。之前的VPS搭建LNMP环境一直用的是一键安装包oneinstack,想来自己也该编译玩玩,就没用一键安装包了。

安装 nginx

当前nginx的Stable version是1.8.0, Mainline version是1.9.9, 这里安装了1.9.9
下载的所有包都放在了/usr/local/src/

  1. 先把所需要的库下载安装好 zlib pcre openssl,

Mehr lesen

Nginx 1.9.5开始支持HTTP2啦

两周前(2015-09-22),Nginx 官方发布消息 1.9.5开始支持HTTP2 https://www.nginx.com/blog/nginx-1-9-5/
喜欢折腾, 也把我的小博客站点启用了HTTP2, 记录一下

安装步骤

  1. 下载Nginx 1.9.5源码 http://nginx.org/download/nginx-1.9.5.tar.gz
  2. 解压并进入 nginx-1.9.5
  3. 配置, (如果忘记之前的配置参数, 可以使用 /usr/local/nginx/sbin/nginx -V 查看一下当时的配置参数) 需要至少启用 –with-http_v2_module 和 –with-http_ssl_module 这两个模块, 如果之前启用了 –with-http_spdy_module 模块则需要去掉这个模块
  4. 接下来就是 makemake install
  5. 在站点配置文件中启用http2

Mehr lesen

搭建局域网中转代理服务器

事出有因

先说说为什么要搭建这个吧:

  1. 自己的机器一般常在学校的大局域网内(至少目前来说是这样),本机是常年开机自启shadowsocks客户端,虽然不怎么占内存,但。。。
  2. 在学校的某研究所本科生小组,小组成员包括我,都有查各种文献资料的需求,学校购买的各种电子资源数据库说实话也不是很适合需求,国内的搜索和资料也不是很全。又因为众所周知的原因,我们不能很顺畅的使用Google,wikipedia等一大批优秀的服务。So…

准备工作

  1. 有一台在大陆之外的服务器A,作为 shadowsocks-server
  2. 在局域网的一台机器B(这里是放在实验室的一台机器,最好能全校访问的到),作为 shadowsocks-local
  3. 和B在同一个局域网的N台机器(小组成员自己的电脑)

Mehr lesen

学习笔记 | MySQL 数据类型

最好的资料是 官方文档 !!!
Data Type Storage Requirements

Numeric Types | 数值型

  • 官方说明文档: https://dev.mysql.com/doc/refman/5.6/en/integer-types.html

    TINYINT, 1Bytes
    SMALLINT, 2Bytes
    MEDIUMINT, 3Bytes
    INT, 4Bytes
    BIGINT, 8Bytes
    FLOAT | DOUBLE | DECIMAL ,指定精度 FLOAT(5,3)可以显示 12.345,超过这个范围进行四舍五入。不指定精度时,FLOAT和DOUBLE按照实际的精度显示,而DECIMAL默认整数位为10小数位为0。FLOAT为4Bytes, DOUBLE为8Bytes, DECIMAL最大支持位数65. 可以参照这篇介绍这一篇

Mehr lesen

读书笔记 | 黑客与画家

从学校图书馆借来了这本经典的很多人推荐的书,我看的是中文版的(ISBN 978-7-115-32656-0),觉的书中很多句子很经典、发人深思、或者是有独特的见解,在这里摘录下来,也写下自己的一些”感悟”。

1. 为什么书呆子不受欢迎

当提到书呆子总是受到欺负时,作者分析说是
没有什么比一个共同的敌人更能使得人们团结起来了。
一群孩子成群结伙地欺负你,那并不是因为你做错了什么,而是因为这一伙人需要找一件事情一起干。
最受欢迎的孩子并不欺负书呆子,他们不需要靠踩在书呆子身上来垫高自己。大部分的欺负来自处于下一等级的学生,那些焦虑的中间层。
真实世界的关键并非在于它是由成年人组成的,而在于它的庞大规模使得你做的每件事都能产生真正意义上的效果。

Mehr lesen