消息轮播js弹层效果

<div id="toast" style="position: fixed; z-index: 999; top: 10%; background: ; text-align: center; width: 100%; display:none;">
 <span id="toast_content" style="border-radius: 32px;background:rgba(0,0,0,.7);opacity: 0.9;padding: 8px 16px;font-size: 14px;color:#fff;"></span>
 </div>
 <script type="text/javascript">
 /* 消息提醒 */
 var area = ['北京', '广州', '郑州', '武汉', '珠海', '长沙', '淄博', '东莞', '昆山', '无锡', '阳江', '钦州', '天津', '厦门', '深圳', '株洲', '达州', '成都', '重庆', '北海', '福州', '梧州', '青海'];
 var person = ['赵先生', '吴先生', '高先生', '郑先生', '刘先生', '王先生', '刘先生', '李先生', '罗先生', '罗先生', '黄先生', '孙先生', '朱先生', '何先生', '朱先生', '白先生', '陈先生', '邓先生', '叶先生'];
 function showToast() {
 var areaIndex = Math.round(Math.random() * (area.length - 1));
 var personIndex = Math.round(Math.random() * (person.length - 1));
 $("#toast_content").text("来自" + area[areaIndex] + "的" + person[personIndex] + "购买了该产品");
 $("#toast").fadeIn();
 setTimeout("dismissToast()", 1500);
 }
 
 function dismissToast() {
 $("#toast").fadeOut();
 setTimeout("showToast()", 1500 + Math.round(Math.random() * 10000));
 }
 dismissToast();
</script>

抢购倒计时js特效

 

 

 

 

 

直接上代码示例

//html部分
<div data-v-a99540b0 class="time" >
 <span data-v-a99540b0></span><span data-v-a99540b0></span><span data-v-a99540b0></span>
</div>
//js部分
<script>
 let countDown = +'83017';
 let _int = setInterval(function(){
 let hours = Math.floor(countDown/60/60),
 minute = Math.floor((countDown - hours*3600)/60),
 second = countDown - (hours*3600 + minute*60),
 day = 0;
 _hours = ('00'+hours).slice(-2);
 _minute = ('00'+minute).slice(-2);
 _second = ('00'+second).slice(-2);
 let _cel = `<span data-v-a99540b0>${_hours}</span><span data-v-a99540b0>${_minute}</span><span data-v-a99540b0>${_second}</span>`;
 if(hours > 72){
 day = Math.floor(hours/24);
 hours = hours%24;
 _day = ('00'+day).slice(-2);
 _cel = `<span data-v-a99540b0>${_hours}</span><span data-v-a99540b0>${_minute}</span><span data-v-a99540b0>${_second}</span>`;;
 }
 if(day > 30){
 clearInterval(_int);return false;
 }
 $('.time').html(_cel);
 countDown--;
 },1000);
 </script>

centos中安装oneinstack遇到的问题总结

安装oneinstack时,在进行到Nginx安装的过程中出现错误

make[2]: Leaving directory `/oneinstack/oneinstack/src/openssl-1.1.1g’
make[1]: Leaving directory `/oneinstack/oneinstack/src/nginx-1.18.0′
make: *** [build] Error 2
Nginx install failed, Please Contact the author!

这是因为系统缺少必要的工具和依赖包,工具有gcc,gcc-c++。依赖包有 pcre-devel ,zlib-devel,openssl-devel  这些通过yum安装即可。安装完成后重新进行oneinstack的安装配置,就没有问题了。

yum -y install gcc gcc-c++  make automake autoconf kernel-devel ncurses-devel libxml2-devel openssl-devel curl-devel libjpeg-devel 
libpng-devel  pcre-devel libtool-libs freetype-devel gd zlib-devel file bison patch mlocate flex diffutils   readline-devel glibc-devel 
glib2-devel bzip2-devel gettext-devel libcap-devel libmcrypt-devel cmake

nginx不跳转链接来做AB页面以及头条抖音快手等user_agent

记录一下,以备不时之需

   #快手app
   location / {
       if ($http_user_agent ~* "Kwai") {
         root /www/wwwroot/web;
       }
   }

   #头条类app
   #NewsArticle 头条
   #ByteLocale 抖音 
   #VideoArticle 西瓜视频
   #Channel 抖音火山版  live_stream

   location / {
       if ($http_user_agent ~* "(NewsArticle|ByteLocale|VideoArticle|Channel)") {
         root /www/wwwroot/web;
       }
   }

微信加粉复制统计系统V6专业版发布(专为个人以及运营团队研发)

大家好,我们统计系统打磨俩年,在2019年11月11日进行了V6专业版的发布

专业版中对运营团队协作进行了很大的改动,用户可以自由分配各种权限设置

详细的介绍大家可以移步到帮助文档中进行查看

https://www.kancloud.cn/qq342855144/v6help/1370959

 

mysql配置主从同步步骤,只同步部分表(mysql5.7为例)

由于部分业务要用到俩台服务器主从同步数据,不需要全部同步表,只同步部分表即可,这里做个笔记

开始之前你要保证主库和从库的数据一致,这里我就不多说了

1、主服务器主库配置

1、配置主服务器my.conf文件

vim /etc/my.cnf
#[mysqld]中增加代码
server-id=1
log_bin=mysql-bin
#不同步数据库  
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
#只仅同步数据库
binlog-do-db=newkw
 
#mysql复制模式,三种:SBR(基于sql语句复制),RBR(基于行的复制),MBR(混合模式复制)
binlog_format=MIXED #混合模式复制,可靠性更高

2、给主服务器中创建用户(此用户可以在从服务器进行连接主服务器用的,不要设置错了)

设置完成后,测试下是否可以在从库远程连接主库,可能有防火墙之类的,测试连接完毕后,在进行下一步

 MySQL [(none)]> grant all privileges on db_name.* to db_user@'%' identified by 'db_pass'; #授权语句,特别注意有分号
 MySQL [(none)]> flush privileges;

3、锁住主服务器表(防止日志产生)

flush tables with read lock;

4、查看主库状态
这里的File和Position会在从库中用到,需要注意下

show master status \G

1、从服务器从库配置

1、配置从服务器my.conf文件

vim /etc/my.cnf
#[mysqld]中增加代码
server-id=2
log_bin=mysql-bin
binlog_format=MIXED
# 需要同步的表 多个分行写
replicate-do-table=newkw.kw_user
replicate-do-table=newkw.kw_weixin

2、从库设置复制主库数据账号

change master to master_host='主mysql服务器ip',master_user='slave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=19416434;

3、启动从库复制

start slave;

4、不要忘了解锁主库

unlock tables;

5、查看从库是否同步上主库
当Slave_IO_Running: Yes Slave_SQL_Running: Yes 都为yes同步成功

show slave status;

Linux 云服务器 buff/cache 占用过多

在Linux下经常会遇到buff/cache内存占用过多问题,尤其是使用云主机的时候最严重,由于很多是虚拟内存,因此如果buff/cache占用过大的,free空闲内存就很少。

普通机器:total=used+free
虚拟机器:total=used+free+buff/cache

1、手动解决

依次运行以下命令:

sync
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches

注意:在执行这三条命令之前一定要先执行sync命令(描述:sync 命令运行 sync 子例程。如果必须停止系统,则运行sync 命令以确保文件系统的完整性。sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-Node、已延迟的块 I/O 和读写映射文件)

2、定时任务

新建 shell 脚本 clear.sh 直接复制我下面的即可

#!/bin/bash
used=`free -m | awk 'NR==2' | awk '{print $3}'`
free=`free -m | awk 'NR==2' | awk '{print $4}'`
echo "===========================" >> /home/jobs/log.log
date >> /home/jobs/log.log
echo "Memory usage before | [Use:${used}MB][Free:${free}MB]" >> /home/jobs/log.log
if [ $free -le 60000 ] ; then
        sync && echo 1 > /proc/sys/vm/drop_caches
        sync && echo 2 > /proc/sys/vm/drop_caches
        sync && echo 3 > /proc/sys/vm/drop_caches
        used_ok=`free -m | awk 'NR==2' | awk '{print $3}'`
        free_ok=`free -m | awk 'NR==2' | awk '{print $4}'`
        echo "Memory usage after | [Use:${used_ok}MB][Free:${free_ok}MB]" >> /home/jobs/log.log
        echo "OK" >> /home/jobs/log.log
else
        echo "Not required" >> /home/jobs/log.log
fi
exit 1

加入定时任务

crontab -e #编辑当前用户定时任务
#输入:*/1 * * * * sh opt/anso/jobs/clear.sh 保存
crontab -l #查看是否创建成功
service crond restart #重启crond服务
service crond status #查看crond服务是否重启成功

微信加粉复制访问统计系统V5版本整合说明&返回劫持说明

本系统现有web版、客户端版、小程序版本
web端登录入口:http://tj.hzypro.com/v2/
具体图文说明请查看

1、基础访问统计

系统已经默认融合了百度及cnzz等类似功能,大家可以在后台直观的看到每次访问记录的详细情况,包括搜索词、IP、时间段等具体记录。

2、微信复制统计

微信复制统计支持移动端和PC端,可统计长按复制,点击复制,拨打电话,一键打开微信等更多功能。更加全面的推广页面上的微信号或者关键词的复制行为统计,让所有加粉来源有据可查!提供复制来源,搜索引擎,搜索关键词,地域.访问设置,以及自定义编码统计等

3、结合推广平台的ocpc推广代码

新版ocpc代码会根据页面精确复制,把具体转化上报给推广平台

4、微信号自动管理

微信号自动化投放管理,自动上下线控制,支持同步二维码轮播,后台设置微信号,推广页面显示微信号!支持单页面多微信号投放,支持分组管理,客服名称显示,支持随机、平均、权重、时间段轮播展示以及字体样式大小调整!

5、弹窗提示代码

为了照顾大家不太会制作网页弹窗等因素,后台特别加入微信弹窗代码,并且支持多种风格选择,可以简单实现一键复制、一键打开微信等多种功能

6、自定义事件统计

自定义事件统计大家可以随意设定自己想要统计的事件,例如下载、提交订单等,实现各种事件报表信息一目了然,具体用法大家可以上后台进行查看

7、子账号管理

子账号管理功能大家可以随意开子账号,子账号户可以单独设定控制客服和查看落地页的权限,做到详细权限划分。pc版小程序版都已开通

8、小程序版本

数据无缝衔接的小程序版本,让大家在手机上可以做到电脑版本任何想做的事。

9、返回劫持功能

该功能有多个设置,这里具体说下
1、直接访问或者信息流访问直接重定向到用户自己设置的页面
信息流一般也属于一种直接访问,当用户手机点击信息流广告后,首先进入是你的落地页页面,但是当他返回退出你的页面之后,你可以随意控制他返回后的进入的页面
对应后台设置
2、直接访问或者信息流访问直接重定向到搜索页面
刚才第一种是用户访问你落地页然后按返回退出时,重定向到了你自定义的链接,这个功能将用户自定义到搜索结果页面,但是用户无论点击哪个搜索结果进入的都是你预先定义好的页面
看图解释
3、用户从搜索引擎进来
对于这部分流量,系统默认会抓取到搜索词,如果抓不到,系统默认使用后台设置的默认搜索词,当用户搜索之后,点击进入你的落地之后,用户再按返回键,这个时候他的搜索结果页已经被完全替换,无论点击哪个链接金进入的都是你预先设置好的链接
功能特点:
1、根据来源自动生成返回页面
2、自动从网络获取最新创意描述
3、无需手动防制粗糙假页面和创意描述
4、不限关键词和行业
5、返回页和真实搜索也效果完全一样
6、使用简单,开启即可使用
7、兼容所有手机浏览器 app

快速生成 Mac App icns 图标

最近做Electron应用,因为需要上线到Mac 版,所以自然接触到了Mac App的图标问题。png 转 icns 网上一搜一大把,但是听我的,不要用。大多数不靠谱,生成质量极差!下面教大家用最传统的方式,生成一个满意的图标:

  • 1 准备一个 1024 * 1024 的png图片,假设名字为 pic.png
  • 2 命令行 $ mkdir tmp.iconset,创建一个临时目录存放不同大小的图片
  • 3 把原图片转为不同大小的图片,并放入上面的临时目录
# 全部拷贝到命令行回车执行,执行结束之后去tmp.iconset查看十张图片是否生成好
sips -z 16 16     pic.png --out tmp.iconset/icon_16x16.png
sips -z 32 32     pic.png --out tmp.iconset/icon_16x16@2x.png
sips -z 32 32     pic.png --out tmp.iconset/icon_32x32.png
sips -z 64 64     pic.png --out tmp.iconset/icon_32x32@2x.png
sips -z 128 128   pic.png --out tmp.iconset/icon_128x128.png
sips -z 256 256   pic.png --out tmp.iconset/icon_128x128@2x.png
sips -z 256 256   pic.png --out tmp.iconset/icon_256x256.png
sips -z 512 512   pic.png --out tmp.iconset/icon_256x256@2x.png
sips -z 512 512   pic.png --out tmp.iconset/icon_512x512.png
sips -z 1024 1024   pic.png --out tmp.iconset/icon_512x512@2x.png

4 通过iconutil生成icns文件 $ iconutil -c icns tmp.iconset -o Icon.icns,此时你的目录应该有了你想要的