首页
4K壁纸
直播
统计分析
友情链接
搜索
1
#1031 – TABLE STORAGE ENGINE FOR ” DOESN’T HAVE THIS OPTION解决方法
1,112 阅读
2
让浏览器不显示 https 页面中 http 请求警报 http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests”
845 阅读
3
报错代码:ERROR 1227 (42000)-解决办法
639 阅读
4
微信个人商户号养号建议
528 阅读
5
解决移动端position:fixed随软键盘移动的问题
479 阅读
PHP
Mysql
Linux
Reids
Java
常用笔记
学习
乱七八糟
Search
标签搜索
php
千卡云支付
Mysql
Linux
redis
千卡云
千卡易支付
Nginx
shell
JS
JSON
支付宝
CentOS
Apache
支付
function
database
fastadmin
phpstorm
快捷键
蓝科迪梦
累计撰写
69
篇文章
累计收到
0
条评论
首页
栏目
PHP
Mysql
Linux
Reids
Java
常用笔记
学习
乱七八糟
页面
4K壁纸
直播
统计分析
友情链接
搜索到
69
篇与
的结果
2022-11-06
网页中点击链接跳转到微信各个界面的方法
方法一:扫描公众号二维码,得到的地址是:http://weixin.qq.com/r/IzsfB-fEoarerbNk924x 点击,会跳转到微信。 方法二:weixin://profile/gh_e011b00aab62 此种类型的链接,此链接在微信内会链接到一个公共帐号的介绍界面。但是目前也只能到达微信界面。 方法三:weixin://qr/gh_e011b00aab62 此种类型的链接在手机的外部浏览器也会被自动识别并跳转到微信,但会进行条码扫描。但是目前也只能到达微信界面。 微信相关URL Scheme参数 weixin://dl/scan 扫一扫 weixin://dl/feedback 反馈 weixin://dl/moments 朋友圈 weixin://dl/settings 设置 weixin://dl/notifications 消息通知设置 weixin://dl/chat 聊天设置 weixin://dl/general 通用设置 weixin://dl/officialaccounts 公众号 weixin://dl/games 游戏 weixin://dl/help 帮助 weixin://dl/feedback 反馈 weixin://dl/profile 个人信息 weixin://dl/features 功能插件
2022年11月06日
342 阅读
0 评论
0 点赞
2022-10-29
Linux Centos7.x 安装redis
卸载原有redis ll /usr/local/bin rm -f /usr/local/bin/redis* ll /usr/local/bin ll rm -rf redis* 安装redis4.0 #安装目录 cd /usr/local #下载资源并解压 wget http://download.redis.io/releases/redis-4.0.6.tar.gz;tar -zxvf redis-4.0.6.tar.gz#安装gcc yum install gcc #进入解压目录 cd redis-4.0.6#编译安装 make MALLOC=libc cd src && make install #安装完成 测试是否正常运行 cd src;./redis-server 安装结束---- 如果无法正常运行,请看下方(待补充) 强制后台运行 redis-server --daemonize yes 通过端口查看redis是否已运行 netstat -lnp|grep 6379 修改/usr/local/redis-4.0.6/redis.conf文件下 daemonize参数选项为yes 修改redis密码/usr/local/redis-4.0.6/redis.conf文件下 requirepass参数 查看redis版本 redis-server -v 开机自启 #redis目录 cd /usr/local/redis-4.0.6/src/ #加入开机自启 在/etc/rc.d/rc.local文件尾部加入redis-server --daemonize yes 重启测试效果
2022年10月29日
212 阅读
0 评论
0 点赞
2022-10-29
CentOS ssh长连接保持会话
1 修改 /etc/ssh/sshd_config 文件 执行命令:vi /etc/ssh/sshd_config 中间部分有: #ClientAliveInterval 0 #ClientAliveCountMax 3 改为: ClientAliveInterval 60 ClientAliveCountMax 60 修改后如下用图: ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔 默认是0 不发送.而ClientAliveInterval 60表示每分钟发送一次 然后客户端响应 这样就保持长连接了 ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值 就自动断开 。 2重启sshd (必须的否则无效) 执行命令:/bin/systemctl restart sshd.service 部分主机:/etc/init.d/sshdstart /etc/rc.d/init.d/sshd restart
2022年10月29日
351 阅读
0 评论
0 点赞
2022-10-29
Apache伪静态Rewrite详解
一、Rewrite规则简介:Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于 Perl语言。可基于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接 安装rewrite模块,别一种是编译apache时以DSO模式安装apache然后再利用源码和apxs来安装rewrite模块。二、在Apache配置中启用Rewrite打开配置文件httpd.conf: 复制代码 代码如下: 1.启用rewrite # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 # 2.启用.htaccess在虚拟机配置项中AllowOverride None 修改为: AllowOverride All 二、Rewrite基本写法服务器有配置文件不可能由我们来改,所以大多情况下要在网站的根目录下建一个.htaccess文件。 复制代码 代码如下: RewriteEngine on //启动rewrite引擎 RewriteRule ^/index([0-9]*).html$ /index.php?id=$1 //“([0-9]*)” 代表范围 用(.*)代表所有,下同。 RewriteRule ^/index([0-9]*)/$ /index.php?id=$1 [R] //虚拟目录 三、Apache mod_rewrite规则重写的标志一览1) R[=code](force redirect) 强制外部重定向强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。2) F(force URL to be forbidden)禁用URL返回403HTTP状态码。3) G(force URL to be gone) 强制URL为GONE,返回410HTTP状态码。4) P(force proxy) 强制使用代理转发。5) L(last rule) 表明当前规则是最后一条规则,停止分析以后规则的重写。6) N(next round) 重新从第一条规则开始运行重写过程。7) C(chained with next rule) 与下一条规则关联如果规则匹配则正常处理,该标志无效,如果不匹配,那么下面所有关联的规则都跳过。8) T=MIME-type(force MIME type) 强制MIME类型9) NS (used only if no internal sub-request) 只用于不是内部子请求10) NC(no case) 不区分大小写11) QSA(query string append) 追加请求字符串12) NE(no URI escaping of output) 不在输出转义特殊字符例如:RewriteRule /foo/(.*) /bar?arg=P1%3d$1 [RNE] 将能正确的将/foo/zoo转换成/bar?arg=P1=zoo13) PT(pass through to next handler) 传递给下一个处理例如: 复制代码 代码如下: RewriteRule ^/abc(.*) /def$1 [PT] # 将会交给/def规则处理 Alias /def /ghi 14) S=num(skip next rule(s)) 跳过num条规则15) E=VAR:VAL(set environment variable) 设置环境变量 四、Apache rewrite例子例子一:同时达到下面两个要求:1.用http://www.jb51.net/xxx.php 来访问 http://www.jb51.net/xxx/2.用http://yyy.jb51.net 来访问 http://www.jb51.net/user.php?username=yyy 的功能 复制代码 代码如下: RewriteEngine On RewriteCond %{HTTP_HOST} ^www.jb51.net RewriteCond %{REQUEST_URI} !^user.php$ RewriteCond %{REQUEST_URI} .php$ RewriteRule (.*).php$ http://www.jb51.net/$1/ [R] RewriteCond %{HTTP_HOST} !^www.jb51.net RewriteRule ^(.+) %{HTTP_HOST} [C] RewriteRule ^([^.]+).jb51.net http://www.jb51.net/user.php?username=$1 例子二: 复制代码 代码如下: /type.php?typeid=* –> /type*.html /type.php?typeid=*&page=* –> /type*page*.html RewriteRule ^/type([0-9]+).html$ /type.php?typeid=$1 [PT]RewriteRule ^/type([0-9]+)page([0-9]+).html$ /type.php?typeid=$1&page=$2 [PT]
2022年10月29日
290 阅读
0 评论
0 点赞
2022-10-29
CentOS 防止CC攻击
1、官方脚本 wget http://www.ywjt.org/wp-content/uploads/2012/10/DDoS-Defender-v2.1-For-Python.tar.gz 或 wget http://blackflyman.qiniudn.com/DDoS-Defender-v2.1-For-Python.zip 2、安装教程 DDoS-Defender-v2.1-For-Python 版: 编写核心连接分析代码不再依赖netstat命令;由于高并发连接下使用netstat处理连接数,使CPU占用率高达100%,严重影响系统性能;直接对/proc/net下的连接记录文件进行分析,使高并发连接状态下比netstat速度提高5倍以上,CPU占用率不超过10%。 使用高效的python语言重写核心代码,主逻辑结构与v2.1.0 SHELL语言版一样。 开发环境是python v2.6.5,安装本工具要求你的python系统版本为v2.6.x或v2.7.x。 程序主要目录介绍: /usr/local/DDos/sbin #主要程序运行文件夹 /usr/local/DDos/logs #事件记录 /usr/local/DDos/conf #配置文件根据自己的需求修改里面的参数 /usr/local/DDos/lib #功能模块库 启动: tar zxvf DDoS-Defender-v2.1-For-Python.tar.gz -C /usr/local/chmod -R 775 /usr/local/ddosdefender/usr/local/ddosdefender/sbin/ddosDedenfer start 维护: 终端可以直接使用命令 ddosdedenfer {start|stop|restart|reload|status}
2022年10月29日
272 阅读
0 评论
0 点赞
2022-10-27
通过NVM安装node.js
1.下载并安装NVM脚本 curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash 2.添加内容 vim ~/.bash_profile export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" 3.生效配置 source ~/.bash_profile 4.安装node版本 nvm install v6.10.2 5.使用版本 nvm use v6.10.2 6.查看版本是否安装成功 node -v 7.安装npm npm install -g cnpm --registry=https://registry.npm.taobao.org 8.安装pm2 cnpm install pm2 -g 9.安装nodejs拓展块 删除 /data/wwwroot/www.abc.com(自己创建的站点)/LiveNewIM/node_modules cd /data/wwwroot/www.abc.com(自己创建的站点)/LiveNewIM rm -rf node_modules --- cnpm install cnpm install md5-node cnpm install node-schedule 10.更新服务器对应目录配置 cd /data/wwwroot/www.abc.com(新建的站点)/LiveNewIM vim config.js 内容如下:'REDISHOST' : 'redis地址''REDISPASS' : 'redis密码''REDISPORT' : '6379''TOKEN' : '1234567''WEBADDRESS': 'http://www.abc.com(自己的域名)/api/public/'vim exposure.js 内容如下:var site='http://www.abc.com(自己的网站域名)'; 11.启动node.js服务 pm2 start s1.js --watch pm2 start exposure.js --watch 12.保存以上pm2设置信息 pm2 save 13.pm2开机自启 pm2 startup
2022年10月27日
292 阅读
0 评论
0 点赞
2022-10-27
让浏览器不显示 https 页面中 http 请求警报 http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests”
在我们服务器的响应头中加入:header(“Content-Security-Policy: upgrade-insecure-requests”); 或者在页面中加入meta头:<meta http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests” /> 都可以解决https页面中http请求的报警信息,意思是让 浏览器自动升级请求。 但是需要注意,如果当前没有服务器资源开启https,则会导致资源加载失败。
2022年10月27日
845 阅读
0 评论
2 点赞
2022-10-24
关于支付宝发起转账网关发送转账请求
复制代码 /** * 功能描述: 支付宝转账接口-公钥证书模式 * * @param aliPayConfig 支付宝配置 * @param orderNo 系统订单号 * @param account 收款方帐号 * @param userName 收款方姓名 * @param amount 转账金额 **/ public static boolean transfer(AliPayConfig aliPayConfig, String orderNo, String account, String userName, String amount) throws AlipayApiException { log.info("支付宝转账开始,订单号 = {}", orderNo); //构造client CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); //设置网关地址 certAlipayRequest.setServerUrl(aliPayConfig.getServerUrl()); //设置应用Id certAlipayRequest.setAppId(aliPayConfig.getAppId()); //设置应用私钥 certAlipayRequest.setPrivateKey(aliPayConfig.getPrivateKey()); //设置请求格式,固定值json certAlipayRequest.setFormat(AliPayConfig.FORMAT); //设置字符集 certAlipayRequest.setCharset(AliPayConfig.CHARSET); //设置签名类型 certAlipayRequest.setSignType(AliPayConfig.SIGN_TYPE); //设置应用公钥证书路径 certAlipayRequest.setCertPath(AliPayConfig.APP_CERT_PATH); //设置支付宝公钥证书路径 certAlipayRequest.setAlipayPublicCertPath(AliPayConfig.PUBLIC_CERT_PATH); //设置支付宝根证书路径 certAlipayRequest.setRootCertPath(AliPayConfig.ROOT_CERT_PATH); //构造client AlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest(); AlipayFundTransToaccountTransferModel transferModel = new AlipayFundTransToaccountTransferModel(); //自身系统订单号, transferModel.setOutBizNo(orderNo); transferModel.setPayeeType(AliPayConfig.IDENTITY_TYPE); transferModel.setPayeeAccount(account); transferModel.setAmount(amount); transferModel.setPayeeRealName(userName); transferModel.setRemark("提款"); request.setBizModel(transferModel); log.info("支付宝转账请求参数 = {}", JSONObject.toJSON(transferModel)); try { AlipayFundTransToaccountTransferResponse response = alipayClient.certificateExecute(request); if (AliPayConfig.SUCCESS_CODE.equals(response.getCode())) { log.info("转账成功,返回信息{}", JSONObject.toJSON(response)); return true; } else { log.error("转账失败,错误信息 = {}", JSONObject.toJSON(response)); return false; } } catch (AlipayApiException e) { log.error("转账异常,异常信息 = {}", e.getMessage()); return false; } }
2022年10月24日
283 阅读
0 评论
0 点赞
2022-10-24
支付宝网关参数
复制代码 @Component @Data public class AliPayConfig { // 支付宝网关 @Value("${aliPay.serverUrl}") private String serverUrl; //appId @Value("${aliPay.appId}") private String appId; //私钥 @Value("${aliPay.privateKey}") private String privateKey; //参数返回格式,只支持 JSON(固定)。 public static String FORMAT = "json"; //商户生成签名字符串所使用的签名算法类型,目前支持 RSA2 和 RSA,推荐使用 RSA2。 public static String SIGN_TYPE = "RSA2"; // 字符编码格式 public static String CHARSET = "UTF-8"; //转账成功状态码 public static String SUCCESS_CODE = "10000"; //收款方标识类型 ALIPAY_USER_ID:支付宝会员的用户 ID,可通过 获取会员信息 能力获取。ALIPAY_LOGON_ID:支付宝登录号,支持邮箱和手机号格式。 public static String IDENTITY_TYPE = "ALIPAY_LOGONID"; //应用证书路径 public static String APP_CERT_PATH = ClassLoader.getSystemResource("aliPay/appCertPublicKey.crt").getPath(); //公钥证书路径 public static String PUBLIC_CERT_PATH = ClassLoader.getSystemResource("aliPay/alipayCertPublicKey_RSA2.crt").getPath(); //支付宝根证书路径 public static String ROOT_CERT_PATH = ClassLoader.getSystemResource("aliPay/alipayRootCert.crt").getPath();
2022年10月24日
255 阅读
0 评论
0 点赞
2022-10-24
关于支付宝获取私钥和公钥-千卡云
支付宝官网:店家我的商家服务—在页面的下方找到——>签约管理—>找打 移动支付—–>点击下载集成文档—>跳到新的页面,在页面下方—>找到下载开发包,下载移动支付即可。然后解压出来之后一般会得到三个文件夹。 这个时候要打开文件名为: 支付宝钱包支付接口开发包2.0标准版的文件。打开之后有一个Demo 文件。里面会有三个文件 夹:第一个 openssl; 第二个 服务端 Demo,第三个 客户端demo. 这个时候,我们需要关心的是 openssl 文件与 客户端 Demo 的文件。 在第三个Demo文件中有iOS版与Android 版的Demo.但是你要部署运行的时候,会发现不能运行成功。在项目主文件里面这样一段代码: //商户PIDpublic static final String PARTNER = ""; //商户收款账号public static final String SELLER = ""; //商户私钥,pkcs8格式public static final String RSA_PRIVATE = ""; //支付宝公钥public static final String RSA_PUBLIC = ""; 因为这些,都是需要根据商户注册的信息来填写的。所以就算下下载了Demo,也没有用。下面讲的就是如何获取私钥与支付宝公钥。 还记得刚刚我们加压之后的openssl文件嘛?获取私钥与公钥的方法就在里面: 首先打开openssl文件:以下是文件打开顺序: openssl–>bin –> 双击 openssl.exe文件。这个时候会出现一个命令框:(首先要说明的是这个文件是在Windows系统下打开的)要是苹果系统好像不行.接着继续往下说: 打开命令框后:输入第一行命令 ,生成私钥,如下: genrsa -out rsa_private_key.pem 1024 按回车键,接着输入第二行命令,生成公钥: rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 按回车键,接着输入第三行命令,将RSA私钥转换成PKCS8格式 pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt 执行完这三行命令后,就生成了两个以:.pem 结尾的文件。这就是我们生成的公钥与私钥.文件位置就在: bin 目录下。当然我们打不开这 两个文件。但是我们可以复制一份到桌面,改成Txt文件打开即可。因为我们需要的只是里面的字符串,记住当我们引用这两个长的字符串的时候,需要注意的 是:字符串,不能包括,换行,空格,以及其他误加的字符。所以复制的时候一定要小心。 当然私钥就是我们需要的私钥了,如何获得支付宝公钥呢:回到支付宝首先,首先登录, 一: 点击“查看PID|KEY”,在新打开的页面(https://b.alipay.com/order/pidAndKey.htm ),可查看到签约支付宝账号、合作者身份ID(PID. 二:输入支付密码,查询key、支付宝公钥。 三:上传RSA公钥,在“合作伙伴密钥管理”下,点击“RSA加密”后的“添加密钥”,把自己的公钥复制进去。注意不能有空格,换 行之类的。 四:点击确认上传,若是提示上传成功。则就是成功。 这个时候就可查看支付宝公钥了。 至此,将对应的私钥与公钥填到相应位置我们的Demo 就可一运行了。然后集成到项目中即可。
2022年10月24日
357 阅读
0 评论
0 点赞
2022-10-21
sessionStorage使用
sessionStorage在MDN里的描述是这样的: sessionStorage 属性允许你访问一个 session Storage 对象。 它与 localStorage 相似,不同之处在于 localStorage 里面存储的数据没有过期时间设置,而存储在 sessionStorage 里面的数据在页面会话结束时会被清除。 页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面仍会保持原来的页面会话。 sessionStorage的使用方法是: // 保存数据到sessionStorage sessionStorage.setItem('key', 'value'); // 从sessionStorage获取数据 var data = sessionStorage.getItem('key'); // 从sessionStorage删除保存的数据 sessionStorage.removeItem('key'); // 从sessionStorage删除所有保存的数据 sessionStorage.clear(); sessionStorage的特点是,当用户打开一个标签页,实际上就是建立了一个session会话,在这个标签页里,url发生跳转, sessionStorage实际上还是保存着,并不会消失,当标签页关闭的时候,数据才会消失。
2022年10月21日
339 阅读
0 评论
0 点赞
2022-10-21
Nginx允许跨域访问的配置问题
跨域问题: has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://dev2.lystrong.cn' is therefore not allowed access. 为跨域访问问题,可以在静态资源服务器A 配置允许跨域请求,nginx在配置中对应的location下添加上如下的设置: add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; 重启nginx
2022年10月21日
387 阅读
0 评论
0 点赞
2022-10-08
解决移动端position:fixed随软键盘移动的问题
在安卓手机上面会出现position:fixed固定定位的问题,当用户点击搜索框的时候,手机的虚拟键盘会把固定在底部的div顶到手机虚拟键盘的正上方,查询后发现是虚拟键盘调用时浏览器高度被压缩了,根据这个特性我们可以通过监听浏览器窗口的高度改变元素的定位或者显示隐藏。 var windowInnerHeight = window.innerHeight; //获取当前浏览器窗口高度 $(window).resize(function(){ if(window.innerHeight < windowInnerHeight){ $('定位按钮').hide(); }else{ $('定位按钮').show(); } });
2022年10月08日
479 阅读
0 评论
0 点赞
2022-10-08
解决JSON.stringify在使用循环体内部变量报错的问题
var source = {name:666}; source.o = source; 这里直接用JSON.stringify(source)打印会报错:Converting circular structure to JSON at Object.stringify,正常需要删除对象的循环引用,这种错误的编码方式,但是有时候我们想打印下对象里都有什么,所以就有了一下方式: deepClone = function(source) { if (!source || typeof source !== 'object') { throw new Error('error arguments', 'shallowClone') } var targetObj = this.testArray(source) ? [] : {} let iii = 0; for (var keys in source) { console.log('\r\n'+keys); targetObj[keys] = source[keys]; if(iii >= 50 ){ //防止对象过多死循环 导致栈溢出 break; } iii++; } return targetObj } console.log(deepClone(source));
2022年10月08日
245 阅读
0 评论
0 点赞
2022-09-25
js前端和php后端对url编解码处理方式不一致的问题
问题:php的解码方式是urldecode,前端的编码方式有escape,encodeURI,encodeURIComponent这三种,escape出来的url,php可以正常解析出来,但是escape不支持ES6,其他两种方式php不能解析正确 解决方法一,根据情况转: URI部分用encodeURI,参数部分用encodeURIComponent,这样才是相对完美的编码方式。 比如`https://example.com/?next=abc...`,得到的结果分别是: encodeURI(`https://example.com/?next=abc...`): "https://example.com/?next=abc.com/def&encoding=utf-8" encodeURIComponent(`https://example.com/?next=abc...`): "https%3A%2F%2Fexample.com%2F%3Fnext%3Dabc.com%2Fdef%26encoding%3Dutf-8" encodeURI(https://example.com/?next=${encodeURIComponent('abc.com/def')}&encoding=${encodeURIComponent('utf-8')}): "https://example.com/?next=abc.com%252Fdef&encoding=utf-8" 解决方法二,base64: json_encode()用eval()还原 base64_decode()用base64_encode()还原 解决方法三,最简单的方法,前后端都不使用转义!
2022年09月25日
212 阅读
0 评论
0 点赞
1
...
3
4
5