备忘:trojan的 二维码格式
比vmess和ss简单,不需要进行base64编码,因此 二维码可以做的非常的小
明文格式:协议
:// 秘钥
@ 域名
: 端口
具体举例说就是:
trojan://password123@domain.net:443
对应生成的QR是(不用试了,这个不是有效的链接)
比vmess和ss简单,不需要进行base64编码,因此 二维码可以做的非常的小
明文格式:协议
:// 秘钥
@ 域名
: 端口
具体举例说就是:
trojan://password123@domain.net:443
对应生成的QR是(不用试了,这个不是有效的链接)
手贱尝试在运行frps 的主机上尝试安装BBR 修改导致系统无法重启。脑一抽 重灌了 ubuntu-18
然后才发现我在上面还跑着好几个其他应用,其中一个就是给博客转发的 frps
重新部署的时候引发大混乱
用一键部署脚本安装了 trojan (真香!) ,自带了 一个nginx。
原本以为全部流量是先渠道nginx然后做反向代理的
没想到竟然是
trojan:443 -> 反向 nginx:80
难怪在 nginx.conf 里找半天没有看到 ssl的设置,加上反向指向 frps.https 也不成功各种问题
让三个应用共享443端口可把我愁坏了。
最后的方案是
nginx:80 -> vhost反向 frp.http:非80
nginx:80 -> 默认 www
trojan: 非443 -> nginx:80
frp.https: 独占 443
终于不打架了,安逸。
再怀缅一下挂掉的服务: praysatoshi.top ... 我会尽快把你恢复的
最后的最后,舔多一口:trojan ...啊~真香。
纯技术研究,不深究行为目的。
运行了几个python后台守护进程,需要重启的时候不能简单 killall python
很容易会误杀其他服务
所以备忘以下的脚本
已验证有效
#!/bin/sh
function PidFind()
{
PIDCOUNT=`ps -ef | grep $1 | grep -v "grep" | grep -v $0 | awk '{print $2}' | wc -l`;
if [ ${PIDCOUNT} -gt 1 ] ; then
echo "There are too many process contains name[$1]"
elif [ ${PIDCOUNT} -le 0 ] ; then
echo "No such process[$1]!"
else
PID=`ps -ef | grep $1 | grep -v "grep" | grep -v ".sh" | awk '{print $2}'` ;
echo "Find the PID of this progress!--- process:$1 PID=[${PID}] ";
echo "Kill the process $1 ...";
kill -9 ${PID};
echo "kill -9 ${PID} $1 done!";
fi
}
#查找并kill掉 带有 newdoc.daemon 名称的进程
PidFind newdoc.daemon
#restart daemon
/path/to/startscript/chkdaemon.sh
当搜索结果不唯一时,脚本也会拒绝执行杀进程
参考文:https://jingyan.baidu.com/article/b7001fe1a5dbc40e7382dd75.html
备忘,当对一个有唯一索引字段的表做插入操作INSERT INTO
时做遇到冲突则更新的逻辑ON DUPLICATE KEY UPDATE
。
想知道此时是否仍然能够获取到 操作的行的id值db.lastrowid
?
sql = "INSERT INTO `mTable`(`id`, `tfsn`) " \
"VALUES(%s, %s) " \
"ON DUPLICATE KEY UPDATE `tfsn`=VALUES(`tfsn`);"
vals = (id, tfsn)
try:
db.execute(sql, vals)
new_cid = db.lastrowid
print("tfid:", tfid) #如果触发了update 可以获得id值?
结论是,能,也可能不。
当触发update 有内容变更时,可以获得 id值;
当update的内容新旧完全一致前后没有变化的话,mysql会认为没有任何行被更新。所以返回的 id 会是0
对于没有运行错误的脚本却发生了高负载、无响应、堵塞或死循环等问题。从进程只能看到异常 php-fpm 存在。需要具体了解详情可以做一下操作
找到 php-fpm.conf 所在路径,编辑之
find / -name php-fpm.conf
查找结果: /usr/local/php/etc/php-fpm.conf
vi /usr/local/php/etc/php-fpm.conf
查看(无则添加)slowlog 值 ,将 request_slowlog_timeout 设为 非0 (0 代表不记录慢日志)
举例如下
...
request_slowlog_timeout = 5s
slowlog = var/log/slow.log
保存,重启 php-fpm
跟踪慢日志
lnmp php-fpm restart
tail -f /usr/local/php/var/log/slow.log
日志会定位到发生运行缓慢的第几行什么命令