nginx安装https模块
目标:nginx配置多个https域名
查看nginx是否支持支持TLS协议的SNI扩展
1 | root@iZj6cgoyl5x6opizfwaukrZ:~# /usr/local/nginx/sbin/nginx -V |
如果出现上面的TLS SNI support enabled,则略过第一步
更新nginx
1 | [root]# wget http://nginx.org/download/nginx-1.12.0.tar.gz |
其中openssl一般系统自带,可不添加
命令实行后建议,备份nginx.conf,进行重新安装,即make install
增加nginx的配置
直接增加server级的ssl配置即可
今天早上想给自己的服务器添加ssl证书,上传证书,配置证书后发现nginx没有配置ssl_module,只好自行添加了
1 | root@instance-0vy61lkh:/maxec/runtime/installer/nginx-1.14.2# nginx -s reload |
首先,需要重新编译源码
1 | root@instance-0vy61lkh:/maxec/runtime/installer/nginx-1.14.2# cd |
这一步千万不能 make install ;不然会把之前已经安装的nginx 覆盖掉
除非你已经备份了配置文件
如果中间发现缺少openssl库,可通过以下命令安装
1 | sudo apt-get install openssl |
现在,检查我们的安装是否生效
1 | root@instance-0vy61lkh:/usr/local/nginx# /usr/local/nginx/sbin/nginx -V |
一个免费SSL引发的血案
问题
- 今天打开自己的博客,发现二次打开时会被断开连接
碰到这个问题第一时间觉的是nginx的ssl配置有问题 - 随即开始对nginx的ssl进行调整,无论调整keepalive-timout
ciphers,都没有效果,随即测试到底多久能再次打开 - 经过测试,发现没有180s能够再次打开,然后查找有关180s的nginx配置
发现有个proxy_timeout默认为180s,修改后无效,挠头了 - 然后考虑是dns转换问题,使用地址访问后,每次都可以进入,然后用ping命令
结果每次地址解析都正确,证明dns解析正常 - 最后,发觉只能是ssl的问题,因为配置没问题,nginx没问题,最后屏蔽ssl配置后
取消跳转,问题解决,看来便宜的ssl还是不行啊…
Android端RSA加密,后端无法解密的情况
2019-10-31 20:11
做BOC支付时,需要对文件进行RSA签名
但是正确的数据,正确的bytes,正确的秘钥
却始终无法得到正确的结果
使用的是给出的RSA工具,其中java环境运行良好,代码如下
1 | /** |
其中cache = cipher.doFinal(data, offSet, inputLen - offSet);
返回数据错误
多方查证cipher的正确初始化方法为Cipher cipher = Cipher.getInstance(“RSA/ECB/PKCS1Padding”);
MySQL查询和修改auto_increment的方法
本文实例讲述了MySQL查询和修改auto_increment的方法。分享给大家供大家参考。具体如下:
查询表名为tableName的auto_increment值:
1 | SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name="tableName"; |
修改表名为tableName的auto_increment值:
ALTER TABLE tableName auto_increment=number ;
希望本文所述对大家的MySQL程序设计有所帮助。
https://www.jb51.net/article/60948.htm
Android Studio 3.5格式化布局代码时错位、错乱bug
更新到3.5版本后,格式化布局文件代码,会自动给排序元素,导致界面布局错乱
解决办法:在布局文件界面按住ctrl+alt+shift+L快捷键,弹出下面的框,取消勾选Rearrange code即可
AS(Idea)打开java,内容错误
记一次痛苦的调试
com.alibaba.fastjson.JSONException: syntax error, expect }, actual ,
这种是因为没有对报文中null进行泛型转换导致的
CentOS部署Hexo博客
安装各种工具
Nginx
- 参考
lrzsz
1 | apt install lrzsz |
Git
1 | sudo apt install git |
新增git用户
1 | root@iZj6cgoyl5x6opizfwaukrZ:~# adduser git |
修改Git权限
1 | visudo |
在root ALL=(ALL:ALL) ALL这一行下面添加git ALL=(ALL:ALL) ALL
关闭git用户shell权限
执行:vim /etc/passwd
将最后一行的git:x:1001:1001:,,,:/home/git:/bin/bash修改为git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
部署
初始化仓库
1 | cd /home/git //切换到git用户目录 |
创建目录
1 | cd /var/www/ //切换目录 |
配置SSH
1 | cd /home/git //切换到git用户目录 |
然后将本地的公钥复制到authorized_keys文件里(公钥即上文中本地执行cat ~/.ssh/id_rsa.pub查看的内容)
修改权限(重要)
修改 .ssh 目录的权限为 700
修改 .ssh/authorized_keys 文件的权限为 600
1 | sudo chmod 700 .ssh |
文件夹权限
1 | ll /home/git/ |
增加Hooks
配置Git Hooks
创建post-receive文件
git用户下执行:
cd /home/git/blog.git/hooks //切换到hooks目录下
vim post-receive //创建文件
复制下面的内容到post-receive文件中:
1 | #!/bin/bash -l |
保存退出后,执行:sudo chmod +x post-receive赋予可执行权限。
测试Git连接
3.Git服务器打开RSA认证
/etc/ssh/sshd_config中将RSA认证打开:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
1 | 在本地打开Git Bash: |