自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 资源 (2)
  • 收藏
  • 关注

原创 nginx+php-fpm请求超时设置

这里只需要改一下php.ini 里面的 max_execution_time 的值 和 php-fpm.conf 中的 request_terminate_out 的值就可以了。不需要对nginx的配置做修改。

2023-05-24 19:47:08 511

原创 uni-app打包小程序根据不同编译条件打包不同静态素材目录

在Hbuilder运行tpl_more时,在微信开发者工具中,查看static目录,只有tpl_more子目录,没有tpl_mars;同理,运行tpl_mars时,static目录下也只有tpl_mars子目录。在uni-app开发小程序的时候,我们经常有这样的需求,一个小程序,拥有多个不同样式的模板,发布的时候,为了减少包的体积,我们希望只打包当前使用的模板对应的静态素材目录,而其他模板的目录不打包进去。运行tpl_mars时,只打包static/tpl_mars呢。

2023-01-20 15:15:20 1331

原创 ReactNative WebView onMessage监听失败

webview与RN通信,在html里发送通知:window.postMessage(JSON.stringify({action: 0, data: data}));发现RN的webview的onMessage监听不到,解决方案是为webview重写window.postMessage方法:<WebView style={{width:this.state.width, height:this.state.height}} ref = {(w

2022-03-12 18:09:13 959

原创 小程序嵌入web-view,返回键点击多次才能返回上一次的问题

在小程序里嵌入web-view,如果web-view本身有跳转页面,在web-view里跳转页面后,点击小程序的返回键,并不会返回小程序的上一页,而是返回web-view的上一页。这在很多应用场景下是非常影响用户体验的,那么如何实现小程序的web-view里不管跳转多少次,点击小程序的返回键,都返回小程序的上一页呢。可以使用浏览器window.history对象,记录页面的跳转情况,然后调用原生小程序的方法回到上一页,以抖音小程序为例:<script type="text/javascr

2022-02-12 16:32:07 3399 6

原创 Vuecli项目本地运行,设置超时

vue本地项目,有时服务器端会执行很耗时的操作,但前台在发起请求2分钟左右,会自动断掉,报错:net::ERR_EMPTY_RESPONSE配置proxy的超时,在devServer中设置proxy: devServer: { host: "0.0.0.0", port: 8888, // 端口 open: false, // 启动后打开浏览器 overlay: { warnings: false, errors: true,

2021-11-23 17:28:17 1363

原创 任意App/H5的web页面直接打开微信小程序的实现

最近公司运营报来一个需求:推广的web页面大多是在百度App/手机原生浏览器被打开,而我们推广的一款产品是基于微信小程序,用户在百度App/手机原生浏览器看到推广页,只能下载小程序码到手机,然后用微信扫码打开小程序,体验太繁琐。需求是要能在百度App(包括其他App)、手机原生浏览器直接打开微信小程序。接到这个需求,最开始是聚焦在微信的静态网站H5跳转小程序:静态网站 H5 跳小程序 | 微信开放文档这要求必须将静态页面上传到小程序云开发中心,比较麻烦。后来又聚焦到微信网页开发的开放标签:.

2021-11-20 20:45:22 3696

原创 微信小程序封装Page基类

小程序的每个Page,在分享的时候都会绑定参数到path,其他用户打开的时候,都需要获取path的参数,这样在每个页面都要重写onShareAppMessage和onLoad里获取options参数,现在要实现的是写一个BasePage基类,直接在BasePage里监听onLoad和onShareAppMessage,而不需要修改业务Page页。// app.jsconst originPage = Page;App({ onLaunch() { }, //封装Page基类,在这里执行基础

2021-07-09 18:21:52 960

原创 php5.6.38编译安装v8js-0.1.3

项目上用VUE做前后端分离,需要用到服务端渲染,php的服务端渲染要用到v8和v8js扩展。下面记录在centos7.2系统上,php5.6.38如何编译安装v8js-0.1.3(在实际安装过程中,发现不同版本的php、不同版本的v8js,会导致各种安装失败,所以我们这里要严格对应php的5.6.38和v8js的0.1.3)。1.首先安装v8-develyum install v8-devel2.切换到php的扩展目录,下载v8jscd /usr/local/php-5.6.38/inc

2020-12-07 19:21:05 748

原创 centos7安装php源码加密扩展php-beast

php-beast是不错的php源码加密的扩展,支付windows和linux,官方的编译安装步骤如下:$ wget https://github.com/liexusong/php-beast/archive/master.zip$ unzip master.zip$ cd php-beast-master$ phpize$ ./configure$ sudo make && make install编译好之后修改php.ini配置文件, 加入配置项: extension

2020-11-23 17:21:01 794

原创 plupload在微信浏览器无法调起相册选择图片提示没有应用可执行此操作的解决方法

plupload在pc端使用正常,在微信端点击上传提示“没有应用可执行此操作”,审查元素发现问题所在:微信网页的input type="file"的accept属性只允许"image/jpg,image/jpeg"这种格式,而pluploader只允许“jpg,jpeg”这种参数格式。console查看pluploader.full.min.js,找到动态生成input type="file"的代码,如下:在网上搜到的方式,基本都是直接修改这个accept="image/jpg,image/jp

2020-09-07 15:40:11 2859 1

转载 linux服务器df、du命令查看磁盘空间不一致的解决方案

服务器40G的系统盘被占满,使用rm命令删除文件后,使用df -hl命令查看可用空间仍然为0。显示大小不一样,一般而言,df显示的使用空间要大于du,这是因为:当一个文件被删除的时候,在文件系统的目录中已经不可见了,所以du就不会再统计它了。然而如果此时还有运行的进程持有这个已经被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改。这样df仍旧会统计这个被删除了的文件。解决方案:1.执行命令 lsof |grep delete 列出来的这些文件,表示已经删除

2020-06-23 10:32:32 1025 1

原创 electron 执行npm install卡node install.js

执行install的时候,一直卡在node install.js,这是因为下载延迟,可以修改install镜像,首先执行以下命令打开npmrc:npm config edit在文件末尾添加淘宝镜像:electron_mirror="https://npm.taobao.org/mirrors/electron/"再执行命令npm install --save-dev elect...

2020-03-04 10:32:57 1063 1

原创 electron执行npm报verbose stack SyntaxError: Unexpected end of JSON input while parsing near

根据官网的命令执行install:npm install --save-dev electron结果报错,查看日志如下:0 info it worked if it ends with ok1 verbose cli [1 verbose cli 'D:\\Program\\nodejs\\node.exe',1 verbose cli 'D:\\Program\\n...

2020-03-04 09:44:03 1819

原创 php使用最新qq企业邮箱smtp服务发送邮件需要开启ssl、开启客户端专用密码

几年前开通的qq企业邮箱,可以正常使用smtp发送邮件。今天重新使用发现不行,研究后发现问题主要出在2个地方:1.qq企业邮箱强制要求ssl方式请求;2.smtp邮箱账号密码为qq企业邮箱的客户端密码。以下附上完整的类文件,并就2个问题的解决逐一记录。首先贴上类文件:<?php/* * 邮件功能:邮箱验证、系统消息发送 * @date 11.7.2014 * @auth...

2019-12-19 13:46:36 2996

原创 eclipse导入maven project问题整理

1.Plugin execution not covered by lifecycle configuration: org.apache.rat:apache-rat-plugin:0.12:check (execution: validate, phase: validate)在<plugins>标签外加上<pluginManagement>标签,如下:&lt...

2019-05-31 11:54:17 914

原创 使用libreoffice将office文档(word、ppt、excel)转pdf,实现在线预览

项目需要实现局域网预览office文档的功能,之前做的在线项目,都是将文档上传到cdn,利用cdn自带的转码功能,把文档转换为pdf,然后再用pdf.js实现在线预览。因为是局域网,没有办法上传到cdn,只能自己搭建本地的文档转换工具。在网上找了很多,最后定位到openoffice和libreoffice,经测试对比,libreoffice转换的效果明显好于openoffice。下面是li...

2018-12-10 13:54:15 32722 17

原创 amap高德地图利用uri api实现商家名片、去这里的功能

高德地图web api使用过程中,经常需要在地图为某个商家标注marker,自然而然就有了点击marker弹出“导航去商家”的需求。以前在amap的开发社区一直找这个接口,因为开发过程中我们都是使用javascript api进行业务开发,所以总是在js api中寻找,实际高德专门准备了uri api实现商家名片、去这里的功能。高德地图URI API地址:http://lbs.amap.c

2017-08-19 13:08:28 7087

原创 信公众号支付JSAPI通过ajax获取支付参数,报错:2支付缺少参数:appId。

做微信公众号支付,在前台调起支付时,前台向服务器端发起ajax请求,服务器端组装支付参数,然后返回给前台。理论上应该没有问题,但支付总是报错:2支付缺少参数:appId。但直接复制console控制台打印出来的服务器端返回的jsApiParameters上去,居然是对的。对比之后才发现,他们的区别在于,第1种方式传入的实际是一个字符串,第2种方式传入的是是一个对象,

2017-06-23 14:19:26 16067 5

原创 windows 2012下iis服务器php无法执行exec、system解决方案

如果操作(创建根目录,上传代码等)都是通过远程以administrator的身份操作,不会出现这个问题。首先,需要确认php支持并开启exec。win2012中,iis8的用户角色为IIS_IUSRS。主要解决两方面的问题,一:让IIS_IUSRS组有权调用cmd.exe;二:让IIS_IUSRS组对站点根目录有执行权限。首先来看如果让iis所在的IIS_IUSRS组有权调用cmd.e

2017-04-23 17:05:49 6494

原创 禁止ftp用户ssh登录,允许ftp登录

项目部分外包,需要限制ftp用户在自己的目录,在21端口下没有问题,但当ftp用户用sftp登录时,还是可以访问上级目录,于是禁止该ftp用户ssh登录,切断22端口的通信。首先,执行如下命令,找到nologin的shell:vi /etc/shells结果如下:可以看到禁止登录的shell文件为/usr/sbin/nologin,然后执行如下命令:usermod -s

2017-01-05 11:53:01 8983

原创 php报Class ZipArchive not found,安装zip扩展

php在linux下解压zip文件,报Class ZipArchive not found,需要安装zip扩展。首先运行下面的命令:# wget http://pecl.php.net/get/zip# tar zxvf zip-1.x.x.tgz# cd zip-1.x.x然后执行下面的命令:# /usr/local/php-5.5.10/bin/phpize运行了

2016-10-27 18:46:50 12065

原创 centos7使用yum安装mariaDB(开源MySQL)无法启动的解决办法

centos7内置的MySQL镜像已经放弃Oracle公司的MySQL,改用MySQL的分支数据库mariaDB,使用以下安装mariadb:yum install mariadb然后使用命令systemctl start mariadb,提示如下:Failed to start mariadb.service: Unit mariadb.service failed to

2016-10-04 14:56:06 49573 23

原创 String转Json,数据格式没问题,始终报String cannot be converted to JSONObject的解决办法

服务器端返回的数据如下:{"status":1,"msg":"","data":{"companyname":"","resCount":4,"res":[{"id":"120","sp":"\u56db\u5ddd\u7701","sc":"\u6210\u90fd\u5e02","ep":"\u5c71\u897f\u7701","ec":"\u592a\u539f\u5e02","pro

2016-07-07 13:29:12 15741 3

转载 Mysql占cpu近100%解决思路

当前网站的七日平均日IP为2900,PageView为3.8万左右。网站A用的database目前有39个表,记录数60.1万条,占空间45MB。按这个数据,Mysql不可能占用这么高的资源。于是在服务器上运行命令,将 mysql 当前的环境变量输出到文件 output.txt:d:\web\mysql> mysqld.exe --help >output.txt发现 tmp_ta

2016-03-21 14:53:30 11084

原创 git撤销commit,错误reset后恢复本地代码;git忽略已经被纳入版本管理的文件

git commit的时候可能commit了不想上传的文件,这个时候可以回退到某次commit。首先git log查看commit历史:commit b217e94539a8143d0c1ca323d1d28b7299abb61eMerge: c2b3f7c 8bc8990Author: yuanjiang &lt;[email protected]&gt;Date: Mo...

2016-03-10 22:48:17 6281 1

原创 php读取超大日志文件

nginx日志文件超过5个G,如果用file()打开,因为是一次性读入内存,系统抗不住。一般思路是用fopen()打开文件(流的形式),再用fseek()定位到某行指针,再用fgets()、fgetc()操作每一行。PHP 5.1.2 开始实现SplFileInfo()类,这个操作起来就更方便了:foreach(glob(nginx_log_dir. "/*.log" ) as $

2016-01-22 11:58:47 3380

原创 正则表达式常用字符集

^ 行首匹配? 0或1个 * 0或多个 + 1或多个\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("$ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位

2015-12-30 11:39:30 2868

原创 Innodb的事务处理autocommit参数问题

在一个开源项目中看到Mysql类事务处理的逻辑://开启事务function strans(){ mysql_query("start transaction");//开始一个事务 mysql_query("SET AUTOCOMMIT=0"); //设置事务不自动commit} //提交事务function commit(){ mysql_query("com

2015-12-22 16:50:16 2794

转载 Myisam与Innodb的选择

Myisam和Innodb最主要的差别就是Innodb 支持事务处理、外键和行级锁。而MyISAM不支持,所以MyISAM往往就容易被人认为只适合在小项目中使用。我作为使用MySQL的用户角度出发,Innodb和MyISAM都是比较喜欢的,但是从我目前运维的数据库平台要达到需求:99.9%的稳定性,方便的扩展性和高可用性来说的话,MyISAM绝对是我的首选。原因如下:1、首

2015-12-22 15:08:18 708

原创 linux下tomcat无法restart

开始使用以下命令直接重启发现并没有报错,但进程发生错误,导致后面既不能关闭也无法开启。service tomcat restart先关闭tomcatservice tomcat stop运行命令查看tomcat是否关闭ps -ef|grep tomcat如果只看到一行信息说明关闭成功,如下root 5071 3820 0 19:24 pts/0 ...

2015-12-14 14:36:55 2063

原创 linux-centos6.5 yum安装php5.4 apache2.2

centos6.5系统,yum install php默认的版本是php5.3,本次安装需要最低版本为php5.4,最开始用yum install httpd安装了apache2.2,但是源码编译php5.5的时候,configure参数始终找不到apache的apxs2文件,编译失败。

2015-10-23 14:55:42 3915

原创 centos7数据库连接使用127.0.0.1报permission denied,使用localhost报No such file or directory

安装lamp环境后,测试数据库连接。当host使用127.0.0.1时,报错:(HY000/2002): Permission denied。把host换成localhost后,又报错:SQLSTATE[HY000] [2002] No such file or directory。最后发现是因为没有关闭selinux,通常情况下载安装完CentOS7后,默认情况下SElinu

2015-09-07 14:52:24 6113

原创 lamp环境只编译安装php

linux上yum安装apache和mysql的源更新都较快,但php版本往往比较低。所以往往有需求yum安装apache和mysql,然后编译安装php。这个思路就在于不使用yum安装php,需要手动指定apxs的路径。补充知识:apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadM...

2015-08-14 16:50:05 11720

原创 android sdk manager设置国内镜像快速下载sdk

android sdk manager通过google的url下载sdk卡成翔了,在网上找了几个国内镜像,亲测可用。Android SDK在线更新镜像服务器:中国科学院开源协会镜像站地址:IPV4/IPV6: http://mirrors.opencas.cn 端口:80IPV4/IPV6: http://mirrors.opencas.org 端口:80IPV4/IPV6:

2015-07-25 15:31:10 16905

原创 nginx配置ssl证书实现https和http共存访问

由于自己生成的证书不受浏览器信任,所以需要到第三方ssl证书提供商处购买,在购买ssl证书时,需要提供一个自己的web服务器生成的csr密码。生成csr的步骤:①:生成RSA密钥: openssl genrsa -out privkey.pem 2048注意,有的证书是要 1024 的,所以得: openssl genrsa -out privkey.pem 1024

2015-05-23 10:29:30 21360

原创 php常用工具函数

1:翻转中英文字符串。/** * 翻译中英文字符串 */function m_strrev($string){ $num = mb_strlen($string,'utf-8'); $new_string = ""; for($i=$num-1;$i>=0;$i--){ $char = mb_substr($string,$i,1,'utf-8');

2015-05-21 10:42:19 940

原创 印尼本地第三方支付Veritrans的ecshop插件

做一个印尼的ecshop二次开发,需要开发一个印尼本地的第三方支付的插件。Veritrans网址为:https://www.veritrans.co.id以下是ecshop的完整代码:第一步:在includes/modules/payment下,新建一个veritrans.php<?php/** * veritrans 支付插件 * @author yuanjiang 04.29

2015-04-30 15:24:45 2632

原创 linux源码编译php5.6以上自带php-fpm的configure参数和依赖包

经常要用到linux环境下自己编译安装php,configure参数繁多,有时候不加注意使用的时候又要重新编译php,所以将常用的configure命令整理如下。第一步,安装依赖包:yum -y install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel liba...

2015-04-20 11:57:22 4394 1

原创 git使用ssh免登录(git服务器为bitbucket.org)

git有一个git gui可视化操作界面,挺方便的,但在配置remote repository报错:could not resolve hostname,没有解决了,还是使用bash命令。第1步:打开git bash,设置name和email:$ git config --global user.name "yourname"$ git config --global user.emai

2015-04-11 10:36:31 3531

原创 nginx禁止访问某些后缀的文件

web项目中一些配置文件比如ini文件,cfg文件,或者静态的模板dwt、lbi文件等,需要设置禁止访问,不然可以直接在browser上下载。location ~* \.(ini|cfg|dwt|lbi)$ { deny all; }

2015-04-06 10:57:32 4569

android美观实用的在线升级demo

项目尾声自己写的一个在线升级功能,感觉还不错,拆分出来形成一个独立demo,需要的自取。

2014-12-03

微信浏览器 图片双手滑动伸缩 直接保存

大家做微信开发的时候肯定遇到过,要在微信的浏览器实现像app相册那样的功能,其实微信浏览器内嵌了一些js,有一个WeixinJSBridge的类,里面封装了很多js方法,这是其中之一。大家可以直接使用

2014-06-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除