自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 收藏
  • 关注

原创 跨站请求伪造攻击(CSRF)的预防

跨站请求伪造攻击(CSRF)的预防问题及解决思路名词解释: 表单:泛指浏览器端用于客户端提交数据的形式;包括a标签、ajax提交数据、form表单提交数据等,而非对等于HTML中的form标签。跨站请求伪造(CSRF,Cross-site request forgery)是另一种常见的攻击。攻击者通过各种方法伪造一个请求,模仿用户提交表单的行为,从而达到修改用户的数据或执行

2017-09-30 15:37:16 637

原创 前后端分离设计

性能与用户体验方面的细节需要做到位(部分代码的顺序位置都会影响html页面的体验)数据与页面之间添加中间层,(缺少中间层,页面加载缺失空白与延迟,用户体验降低)使用中间层渲染生成对应的html前端负责  控制器与View渲染页面html的工作安全方面主要做XSS防御预防XSS攻击的基本方法是:确保任何被输出到HTML页面中的数据以HTML的方式进行转义(HT

2017-09-30 12:02:27 553

原创 html页面中,代码不转义,使用--------<xmp></xmp>标签

还记得那个在HTML4.01就被废除的标签吗----------标签虽然被废除,但是因为太好用,基本所有浏览器都还支持.它的后续继任者就是pre,但是pre会转义html字符,因为它只是个文本格式化标签,例如这是一个超链接,如果你写在pre里面,还是会被转义,显示为超链接,但是如果用xmp标签呢?它就会完整的输出html标签,并且不做任何转义,也就是把HTML标签输出为字符串,除了

2017-09-25 17:26:46 12368

原创 PHP精度解决方案

http://php.net/manual/zh/function.bcadd.php上述网址中有对于精度的解决方案.取一个数的精度,可以采用该数与0相加后取对应的精度的解决方案如下bcadd('1.23456789',0,5);上面网址还有个笔记写的不错,是一个函数在下面转一下该笔记I made this to add an

2017-09-20 09:48:27 506

原创 关于PHP运算精确度的问题

遇到一个很坑的问题数值做float类型转换之后,经过运算之后得到了    'amount' => 110.00000000000001,与数据库的数据进行比较导致不匹配,这个属于PHP底层的运算问题,注意float运算的精确度,对于精确度要求很高,运算处理要谨慎处理

2017-09-19 15:48:47 1013

原创 数据表设计考虑的问题

数据表的数据是否允许(非系统)编辑  (如不允许,冗余字段设计可以减少联表(减少多表操作))数据是否根据其他情况变动  (如需变动,关联表设计)

2017-09-15 10:23:11 302

原创 MYSQL数据库将 表1的字段值更改为表2字段的值

update t_interface i1,t_interface i2 set i1.balance = i2.restore_money where i1.itype=1 and i1.iid = i2.iid

2017-09-13 17:12:35 3297

原创 thinkphp5 锁表操作

这个问题坑了很久.中间经历了很多艰难的过程,,研究了半天的源码,唉,不多说了主要是设置options   的PDO配置,因为原来的框架本身设置,导致锁表报错.$options = Config::get('database');$options['params'] = [ \PDO::ATTR_CASE => \PDO::CASE_NATURAL, \PDO::A

2017-09-13 16:41:07 6747 1

原创 PHP使用部分函数传入乱码作为变量会报错

PHP使用部分函数传入乱码作为变量会报错

2017-08-30 10:26:30 284

原创 PHP关于(类对象)回调方法的使用

set_error_handler作为例子(详细解释可以看PHP手册)function set_error_handler ($error_handler, $error_types = E_ALL | E_STRICT) {}callback $error_handler,这个应该是作为回调函数的句柄,可能类似于钩子的原理使用如下public function __

2017-08-14 18:46:55 727

原创 PHP强制修改返回的状态码

在最后的程序执行完毕之前,加入下列语句,即可实现所有的返回码都为200即使在服务器内部发生错误,会报500情况下只要加上register_shutdown_function函数的处理同样可以实现返回200的效果header("HTTP/1.0 200 OK");这样做的目的:(对用户更加友好的处理方式)主要是为了屏蔽错误,把错误日志输出到错误日志中,同时保证返回正常信息或者跳转到其他页面链

2017-08-14 15:19:39 12611

原创 支付宝SDK 返回验签的错误BUG修改解决方案

验签的问题一直报错,无语了..............不知道编写的人是个什么想法具体修改如下在保证不影响原代码的处理下,多加一个分支判断(怕其他地方要用到他的这个代码)又不见了几个小时

2017-08-03 21:06:41 3241 1

原创 支付宝SDK出现的问题---缺少签名参数 无效签名

支付宝SDK出现的问题---缺少签名参数    无效签名真相永远只有一个------------------填错了密钥(解决2个问题的方案就是这样)实在不行,换另外的支付宝账号密钥来测试就行了坑就坑在密钥改了之后你没有更新最新的密钥

2017-08-03 20:02:11 12675 1

原创 使用任务集合来限制高并发导致服务器超负载的解决方案

找一个载体来当  任务集合  的储存工具 例如  数据库,文件,内存比如一台服务器至多可以承受1000的并发处理量当请求进入服务器时,把请求   以KEY-VALUE键值对的形式  放入  任务集合如果当前请求处理完毕     把   任务集合    中对应的 键值对去掉,表示当前请求处理完毕 通过查询任务集合的   长度或大小,来判断  当前的  处理请求

2017-08-01 21:01:11 331

原创 php安装redis扩展

1 添加phpredis扩展 首先,查看所用php编译版本V6/V9 在phpinfo()中查看  2 下载扩展 地址:https://github.com/nicolasff/phpredis/downloads(注意所支持的php版本) extension=php_igbinary.dll   要放在前面3 将下载

2017-07-31 20:30:56 209

原创 php 隐藏index.php 404错误

隐藏入口文件在ThinkPHP5.0中,出于优化的URL访问原则,还支持通过URL重写隐藏入口文件,下面以Apache为例说明隐藏应用入口文件index.php的设置。下面是Apache的配置过程,可以参考下:1、httpd.conf配置文件中加载了mod_rewrite.so模块2、AllowOverride None 将None改为 All3、在应用入口文件同级目录

2017-07-10 17:44:19 1371

原创 thinkphp 原生语句 Like 绑定参数

使用语句如      name  like   ?绑定的数组要做处理  比如    ?  只是占位符如查询   c需要将查询的字符串  封装成   %c%  ,这样就可以正常使用了,主要是占位符的原理,是先把语句提交给数据库,再把对应的参数填入进去mysql直接查询也是如此

2017-07-06 21:56:54 889

原创 mysql数据库------疑问

以下为网上查找到的一些资料固定长度的表会更快?如果表中的所有字段都是“固定长度”的,整个表会被认为是 “static” 或 “fixed-length”。 例如,表中没有如下类型的字段: VARCHAR,TEXT,BLOB。只要你包括了其中一个这些字段,那么这个表就不是“固定长度静态表”了,这样,MySQL 引擎会用另一种方法来处理。固定长度的表会提高性能,因为My

2017-06-30 11:40:36 232

原创 PHP服务器配置php.ini

php.ini配置报错error_log,输出到对应的文件,方便查看调试错误,维护session的配置扩展配置

2017-06-28 10:50:12 565

原创 PHP类型转换

PHP的强制类型转换,通常都是新创建对应的数据或对象所以转换之后,最好赋值给原变量这样可以避免后面使用该变量地址时出现错误

2017-06-21 15:13:45 184

原创 支付宝新版接口API开发

支付宝新版API更新了很多东西官方提供的SDK有些居然报错了用5.5版本可以,5.6版本不可以.......................这时如果报错就要切换版本做尝试了报错之后查看对应的错误码,与对应的提示,下面为链接,有些错误很隐蔽,不易查出https://doc.open.alipay.com/docs/doc.htm?spm=a219a

2017-06-13 10:25:24 4298

原创 关于接口的数据

一般先用数组的形式表示$result=array( 'code'=>'返回码,如:1000', 'msg'=>'返回消息的说明,如:系统繁忙', 'data'=>'返回的数据,json形式的数据数组');之后把数组转化为json形式,进行返回处理

2017-06-09 12:05:51 233

原创 php配置参数 linux搭建

'./configure' '--prefix=/usr/local/php' '--with-apxs2=/usr/sbin/apxs' '--with-mysql' '--with-mysqli=/usr/bin/mysql_config' '--with-pdo-mysql' '--with-gd' '--enable-gd-native-ttf' '--with-jpeg-dir' '--

2017-06-07 17:09:54 236

原创 微信开发 提示 Redirect_uri参数错误

今天搞微信开发弄网页授权2.0  获取用户的openid的时候这个参数一直报错非常坑爹后来才发现需要配置对应的域名参数....无语了也不提示的具体一点,唉,算了

2017-06-05 12:28:26 426

原创 解决configure: error: Please reinstall the libcurl

今天配置一台server的PHP支持curl的时候, 出现如下报错checking for cURL in default path... not foundconfigure: error: Please reinstall the libcurl distribution -easy.h should be in /include/curl/其实就是curl的dev

2017-06-05 12:19:47 9376 1

原创 thinkphp5 引入第三方类的坑爹之处

使用 namespace引入第三方类时,该类文件包含有多个类这个时候就非常坑爹了需要  use  命名空间;include  '';该文件的路径new   org\对应类;例子如下,必须要具备下面3个,引入才不会  Not founduse think\org;include 'F:\new\thinkphp\li

2017-06-01 12:33:41 3035

原创 如何配置Apache不同的端口指向不同的网站

1、到Apache官网http://www.apache.org下载Apache服务器,本文以版本2.2为例;2、安装Apahce,这里我安装到D:Apache下;3、到安装目录下的conf目录下找到httpd.conf文件,这是Apache的配置文件,用记事本打开;4、找到Listen 80,这是Apache的默认端口,你可以修改该端口,也可以添加新端口,这里我改为如下(也就是为该服

2017-05-19 14:17:27 2063

原创 PHP安装新扩展

使用回原来的安装方法与安装文件夹./configure   使用的安装配置参数,在以前的安装基础上再添加所需要的扩展,前提,所安装的扩展已经装好对应的  库与   连接扩展文件  xx-devel  make make install之后即可安装成功而且,最好,把在httpd.conf文件中的load phpmodules 改成绝对路径.(不改成绝对路径

2017-05-17 20:39:06 326

原创 关于char和varchar的查询效率问题

一开始,我也认为char效率要高的,毕竟占的空间固定,不用对于空间做过多处理网上有很多坑爹的说   char效率高亲测   char(100)   varchar(100)   1000W条数据从查询方面的角度来说,还是varchar毕竟靠谱查询效率   varchar的字段查询要比char快   1S    (在没有使用索引的情况下)至

2017-05-15 10:29:23 5602 4

转载 如何卸载rpm包

首先通过  rpm -q 可以查询到rpm包的名字 然后 调用 rpm -e 删除特定rpm包 如果遇到依赖,无法删除,使用 rpm -e --nodeps 不检查依赖,直接删除rpm包 如果恰好有多个包叫同样的名字,使用 rpm -e --allmatches --nodeps  删除所有相同名字的包, 并忽略依赖

2017-05-08 15:46:28 494

原创 linux安装 apache,mysql,php

安装以上环境的时候如果PHP需要扩展,这样安装起来非常蛋疼,最好一开始把全部由可能用得上的扩展安装上去(PHP官方对应版本里含有的扩展包,这里是说官方提供,像部分官方未提供的redis那还得另外单独安装)防止后期单独安装导致的其他BUG或者安装不上进入php解压包文件夹./configure   -help    有对应参数设置说明

2017-05-08 15:37:05 352

原创 yum命令

yum list | grep   关键字例如  yum list | grep mysql查询所有可以通过yum下载与mysql关键字有关的包yum install  下载安装的包名称删除安装包yum remove 列出所有已安裝的软件包信息命令:yum info installed查询已安装的安装包使用RPM指

2017-05-08 15:17:25 246

原创 linux查看php安装了哪些扩展

/PHP安装路径/php -m

2017-05-06 17:38:14 4148

原创 linux 停止命令运行

windows下停止dos命令运行的操作是ctrl+z,linux下停止命令运行的操作是ctrl+c

2017-05-06 11:10:28 3935

原创 linux查询已安装的包 RPM

rpm -qa  | grep -i mysql

2017-05-05 17:30:13 1953

原创 linux 安装 apache,php,mysql

安装APACHE首先安装apache,这个我是直接使用yum来进行安装的yum install httpd  安装对应的httpd插件,否则无法把php集成起来 yum install httpd-devel这个里面有apxs出处https://www.howtoforge.com/community/threads/cannot-compile-new-p

2017-05-05 12:17:49 685

原创 关于安装MYSQL不知道密码的问题

在安装的MYSQL过程,跳过了设置密码的阶段此时一般会生成一个随机的密码文件,你可以在此密码文件中查找到密码安装过程中会出现提示的,如果实在找不到     运用文本查找      查询 pass   即可找到对应的文件位置vi   打开该文件即可

2017-05-04 20:32:36 1184

原创 linux服务器安装MYSQL

一般有3种方法,yum包安装,  版本受限制太大,比较坑rpm包安装,最方便快捷省事源码包安装,各种写配置语句,各种安装对应的依赖插件首先要确定你的LINUX是什么版本,到MYSQL官网下载对应的版本建议还是RPM安装,最方便快捷下面这种,有可能是你安装的MYSQL版本和服务器LINUX版本不对Failed dependencies:

2017-05-04 18:05:45 291

原创 本机IP无法访问本地服务器问题

可能是端口出了问题,调整服务器配置,监听多个端口,不用80端口,使用另外的端口就可以解决这个问题了

2017-05-04 15:13:12 1973

原创 yum 命令

yum list | grep mysql     查找可以使用yum安装的mysql版本yum list mysql   查找所有可用yum安装的mysql版本

2017-05-03 18:27:27 235

空空如也

空空如也

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

TA关注的人

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