将 JS 代码放入图片文件
void function(){
var source = 'js.png'; // 存放JS代码的图片
var img = document.createElement('img');
img.src = source;
img.onload = function(){
var canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
var context = canvas.getContext("2d");
context.drawImage(img, 0, 0);
var imageData = contex...
var code = 'alert("hello image.");';
var w=6,h=8; // 宽和高的计算方法 w * h * 32 / 8 = code.length
// 按3个字符的长度分段
var codeArray = code.match(/.{3}/g);
if(codeArray.length * 3 < code.length){
codeArray.push( code.substring( codeArray.length * 3 - 1) );
}
for(var i = 0, cl = codeArray.length; i < cl; c++){
codeArray[i] = codeArray[i]+String.fromChar...
=LOOKUP(--LEFT(C3,3),{130;131;132;133;134;135;136;137;138;139;147;150;151;152;153;154;155;156;157;158;159;176;180;181;182;183;185;186;187;188;189},{"联通";"联通";"联通";"电信";"移动";"移动";"移动";"移动";"移动";"移动";"移动";"移动";"移动";"移动";"电...
服务端是PHP+NodeJS,NodeJS提供WebSockets的在线聊天。
安装
yum install nodejs
npm install websocket forever
./websocket/run.sh # 把 websocket server 跑起来
需要自己把网址做成二维码打印出来。
源码下载
配置文件在 /data/conn.inc.php
需要设置数据库、车主手机号、发邮件的帐号、发短信的帐号,见上边的配置文件。
在线聊天是个 nodejs 的 websocket。ws服务地址在 /index.php:12
<完>
vi /etc/systemd/system/multi-user.target.wants/tomcat.service
# Systemd unit file for default tomcat
#
# To create clones of this service:
# DO NOTHING, use tomcat@.service instead.
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=simple
EnvironmentFile=/etc/tomcat/tomcat.conf
Environment="NAME="
EnvironmentF...
用法:
// 用法1:
$mail = new smtp();
#$mail->setServer("smtp@126.com", "XXXXX@126.com", "XXXXX"); //设置smtp服务器,普通连接方式
$mail->setServer("smtp.gmail.com", "XXXXX@gmail.com", "XXXXX", true, 465); //设置smtp服务器,到服务器的SSL连接
$mail->setFrom("from@from.from"); //设置发件人
$mail->setReceiver(&...
// 是否身份证号
// 15位用正则验证,18位用校验码
// https://wapbaike.baidu.com/item/身份证校验码
String.prototype.isIdCard = function () {
var id = this;
var a = id.toUpperCase().split('');
var c = '7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2'.split(',');
var d = '10X98765432'.split('');
var s = 0;
var l = a.length;
var v = a[l - 1];
var n = /^\d{6}(18|19|20)\d{2}[01]\d[0123]\d\d{3}...
<system.webServer>
<rewrite>
<rules>
<rule name="栾川登录页" stopProcessing="true">
<match url="v2/guest/$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^e\.djlc\.gov\.cn$" />
</conditions>
<action type="Rewrite" url="v2/subsite/luanchuan/...
题图是两个加油枪,外形差不多但是细节上还是有区别的,
枪头上的小孔是干什么的?
为什么左边那个加油枪外面还套个筒?
先说一下枪头上的小孔,
两把枪都有,只是位置不同,这个小孔可不是油孔而是气孔,加满油自动跳枪就靠它了,自动跳枪正式的名称是自封油枪,下面是自封油枪的结构和原理。
如果大家对上面的解释还看不太明白的话,下面这个图可以帮你进一步了解加满跳枪的过程。
加满后油液堵住进气口–>空气负...
凭据保存备份有两个部分,一个是远程桌面连接的历史记录,这些记录被保存在注册表下,
HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client
只要将这部分注册表导出备份即可,但是导出这个只有历史记录,并没有凭据信息,也就是保存的登录帐号密码,而这些信息是被存放在另外一个神奇的地方的
第二部分就是导出系统的凭据,Windows把各种域网络登录的凭据都统一管理,在控制面板》用户账户》管理您的凭据,可...
抽象来说,将 Nginx 配置为 Web 服务器就是定义处理哪些 URLS 和如何处理这些URLS 对应的请求。具体来说,就是定义一些虚拟服务器(Virtual Servers),控制具有特定 IP 和域名的请求。
更具体的来说, Nginx 通过定义一系列 locations 来控制对 URIS 的选择。每一个 location 定义了对映射到自己的请求的处理场景:返回一个文件或者代理请求,或者根据不同的错误代码返回不同的错误页面。另外,根据 URI 的不同,请求也可以被...