- 博客(61)
- 收藏
- 关注

原创 关于memcache权限的问题
Memcache是一套常用的key-value缓存系统,由于它本身没有权限控制模块,所以开放在外网的Memcache服务很容易被攻击者扫描发现,通过命令交互可直接读取Memcache中的敏感信息。 修复方案 因Memcache无权限控制功能,所以需要用户对访问来源进行限制,下面分享4中有效的解决方法。 1、绑定IP 如果Memcache没有在外网开放的必要,可在Me
2017-02-06 11:30:53
3661

原创 centos6.4 32位系统安装mongodb及php扩展
mongodb系统环境:centos 6.4 32bitmongodb下载地址:http://www.mongodb.org/downloadsmongodb具体版本:http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.4.5.tgzmongodb安装目录:/home/mongodb-linux-i686-2.4.5mongod
2017-01-09 16:44:11
923

原创 centos6.4安装memcached,及PHP扩展
安装yum install memcached -y运行 memcached -d -m 128 -l localhost -p 11211 -u root-d 以守护程序(daemon)方式运行 memcached;-m 设置 memcached 可以使用的内存大小,单位为 M;-l 设置监听的 IP 地址,如果是本机的话,通常可以不设置此参数;-p 设置监听的端口,
2017-01-09 16:37:50
310

转载 强制修改mysql密码
1.停止mysql服务:service mysqld stop;2. mysqld_safe --skip-grant-tables3. 重新打一个开个SSH连接(即重新打一个新的黑色窗口); 4.输入以下命令: [ root@localhost ~]# mysql mysql>use mysql mysql>update user set password=
2016-11-28 15:53:18
363

转载 主从服务器配置
主从复制配置步骤如下:主服务器:从服务器ip地址分别为[python] view plain copy 192.168.145.222、192.168.145.226 1、修改主服务器master:[python] view plain copy vi /etc/my.cnf [mysqld] log-b
2016-10-17 16:40:12
403
转载 win7系统安装ElasticSearch
安装Java SE环境,从Java Se Download下载和安装Java SE开发包,如下图所示:2Java SE开发包安装完成之后,需要在服务器上创建JAVA_HOME环境变量点击“此电脑(This PC)”的属性->高级系统设置(Advanced System Setting)->环境变量(Environment Variables),新建一个用户环境变
2017-09-05 18:53:31
679
转载 php反射常用的函数
反射面向对象编程中对象被赋予了自省的能力,而这个自省的过程就是反射。反射,直观理解就是根据到达地找到出发地和来源。比如,一个光秃秃的对象,我们可以仅仅通过这个对象就能知道它所属的类、拥有哪些方法。反射是指在PHP运行状态中,扩展分析PHP程序,导出或提出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取信息以及动态调用对象方法的功能称为反射API。
2017-07-26 17:20:06
840
转载 关于mysql中where条件的类型自动转换
CREATE TABLE `appstat_day_prototype_201305` (`day_key` dateNOT NULL DEFAULT '1900-01-01',
2017-07-20 17:20:21
5287
转载 mysql事务和锁InnoDB
背景 MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信,让我帮助解决一些死锁的问题。本文,准备就MySQL/InnoDB的加锁问题,展开较为深入的分析与讨论,主要是介绍一种思路,运用此思路,拿到任何一条SQL语句,都能完整的分析出这条语句会加什么锁?会有什么样的使用风险?甚至是
2017-07-20 16:33:42
455
转载 MySQL修改表结构操作命令总结
这篇文章主要介绍了MySQL修改表结构操作命令总结,包含如删除列、添加列、修改列、添加主键、删除主键、添加唯一索引、添加普通索引等内容,需要的朋友可以参考下表的结构如下:复制代码 代码如下:mysql> show create table person;| person | CREATE TABLE `person` (`number` int(11) DEFAUL
2017-06-20 09:11:06
493
转载 fopen访问远程文件
使用PHP不仅可以让用户通过浏览器访问服务器端的文件,还可以通过HTTP或FTP等协议访问其他服务器中的文件,可以在大多数需要用文件名作为参数的函数中使用HTTP和FTP URL来代替文件名。使用fopen()函数将指定的文件名与资源绑定到一个流上,如果文件名是“scheme://…”的格式,则被当成一个URL,PHP将搜索协议处理器(也被成为封装协议)来处理此模式。如果需要远程访问文件,必须
2017-06-15 08:55:10
3522
转载 php中日志文件防止并发写入
本文为大家讲解的是php中并发读写文件冲突的解决方案(文件锁应用示例),感兴趣的同学参考下.在这里提供4种高并发读写文件的方案,各有优点,可以根据自己的情况解决php并发读写文件冲突的问题。对于日IP不高或者说并发数不是很大的应用,一般不用考虑这些!用一般的文件操作方法完全没有问题。但如果并发高,在我们对文件进行读写操作时,很有可能多个进程对进一文件进行操作,如果这时不对文件的访问进行相应
2017-06-14 11:58:26
1359
转载 php中引用&的整整理解
php的引用(就是在变量或者函数、对象等前面加上&符号) //最重要就是 删除引用的变量 ,只是引用的变量访问不了,但是内容并没有销毁 在PHP 中引用的意思是:不同的名字访问同一个变量内容.变量的引用 PHP 的引用允许你用两个变量来指向同一个内容 php$a="ABC"; $b =&$a; echo $a;//这里输出:ABC echo $b;//这里
2017-06-14 10:38:48
251
转载 mysql事物 并发问题,锁机制
本文转自:http://www.cnblogs.com/fidelQuan/p/4549068.html1、什么是事务事务是一条或多条数据库操作语句的组合,具备ACID,4个特点。原子性:要不全部成功,要不全部撤销隔离性:事务之间相互独立,互不干扰一致性:数据库正确地改变状态后,数据库的一致性约束没有被破坏持久性:事务的提交结果,将持久保存在数据库中 2、事务并发会
2017-06-09 10:05:59
708
转载 mysql处理高并发防止超买超卖
先来就库存超卖的问题作描述:一般电子商务网站都会遇到如团购、秒杀、特价之类的活动,而这样的活动有一个共同的特点就是访问量激增、上千甚至上万人抢购一个商品。然而,作为活动商品,库存肯定是很有限的,如何控制库存不让出现超买,以防止造成不必要的损失是众多电子商务网站程序员头疼的问题,这同时也是最基本的问题。从技术方面剖析,很多人肯定会想到事务,但是事务是控制库存超卖的必要条件,但不是充分必要条件
2017-06-09 09:43:21
2845
转载 Nginx伪静态配置和常用Rewrite伪静态规则集锦
伪静态是一种可以把文件后缀改成任何可能的一种方法,如果我想把PHP文件伪静态成html文件,这种相当简单的,下面来介绍nginx 伪静态配置方法有需要了解的朋友可参考。nginx里使用伪静态是直接在nginx.conf 中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态。nginx只需要打开nginx.conf配置文件,在server里面
2017-03-10 14:22:03
9898
原创 redis远程连接与密码验证
redis开启远程访问redis默认只允许本地访问,要使redis可以远程访问可以修改redis.conf 打开redis.conf文件在NETWORK部分有说明解决办法:注释掉bind 127.0.0.1可以使所有的ip访问redis若是想指定多个ip访问,但并不是全部的ip访问,可以bind注意下面还有个说明在redis3.2之后,redis
2017-02-16 11:05:44
25770
1
原创 最新github创建blog主页
github pagegithub-page是一个免费的静态网站托管平台,由github提供,它具有以下特点:免空间费,免流量费具有项目主页和个人主页两种选择支持页面生成,可以使用jekyll来布局页面,使用markdown来书写正文可以自定义域名项目主页项目主页的目的是为项目提供一个展示功能的网站,方便项目推广。但是也可以用来做个人博客。对于博客来说,博客的整个网
2017-02-15 10:58:23
309
原创 laravel框架使用git clone时遇到的问题
框架通过git push到linux或者github上,在通过 git clone到本地,会出现错误php bin/console server:run PHP Warning: require(D:\home\workspace\pd\app/../vendor/autoload.php): failed to open stream: No such file or direc
2017-02-10 16:51:54
2378
转载 微信小程序+php+swoole极速实现群聊
最近突然想做一个php实时通讯我就点开了这个WebSocket我看了看官网的demo,觉得看起来很简单嘛,//官网demo$server = new swoole_websocket_server("0.0.0.0", 9501);$server->on('open', function (swoole_websocket_server $server, $re
2017-01-16 08:40:57
9016
原创 一道有趣的变量运算问题
有两个init类型的变量 $a,$b,数值不定重点来了。。。在不引入任何第三方操作,只能用运算符的情况下,如何让$a,$b数值对换(向下拉有答案)答案是:(我们假设
2016-12-30 09:59:42
326
转载 socket监听端口实现实时通讯
socket通信的原理在这里就不说了,它的用途还是比较广泛的,我们可以使用socket来做一个API接口出来,也可以使用socket来实现两个程序之间的通信,我们来研究一下在php里面如何实现socket通信。(李昌辉)1.php制作的socket服务端主要功能是设置socket通信的IP地址及端口号,监听端口,有客户端连接的话,接收连接请求接收数据,处理并且返回数据。代码如下:
2016-12-29 16:37:36
7871
原创 如何封装一个自己的mvc框架(七)
mvc框架封装到了最后一步,我们需要引入一个模板引擎twig同样修改composer文件,在require中加入一行"twig/twig":"*"然后命令行输入composer update这样就加载了twig引擎我们可以打开http://twig.sensiolabs.org/doc/api.html网站查看手册twig模板引擎最优
2016-12-27 08:34:15
926
原创 如何封装一个自己的mvc框架(六)
我们的框架已经逐步趋于完善接下来我们利用composer加载一些工具,使我们的框架操作性更强 首先确定你的环境是否安装了composer,使用composer前需要编写composer文件,让composer知道需要加载哪些工具{ "name": "MYMVC PHP", "description":"PHP Framework", "type
2016-12-26 13:28:51
488
转载 composer install or update 报错问题解决
composer镜像不支持https引起打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:composer config repo.packagist composer https://packagist.phpcomposer.com 上述命令将会在当前项目中的 compo
2016-12-26 09:09:08
1347
转载 composer win7环境下的安装和使用
Composer简介Composer 是 PHP的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer不是一个包管理器。是的,它涉及"packages"和"libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。win环
2016-12-26 08:40:55
2098
原创 如何封装一个自己的mvc框架(五)
这一节 我们的框架需要完善一项功能,那就是日志功能,通过查看日志我们可以查看之前操作的控制器首先我们需要创建一个日志类需要有一下几个步骤 * 1.确定日志存储方式 * * 2.写日志namespace core\lib;use core\lib\config;class log { static $class;
2016-12-25 21:32:10
286
原创 如何封装一个自己的mvc框架(四)
之前写好的框架看起来太low了,这一节我们增加我们框架的健壮性我们需要做的是加载配置类,这样我们的框架看起来就比较的完善了首先创建配置信息文件目录例如路由信息route.phpreturn array( 'CONTROL'=>'index', 'ACTION'=>'index');还有数据库信息return array( 'DSN'
2016-12-25 19:46:15
462
原创 如何封装一个自己的mvc框架(三)
上一节写到初步完成框架的控制器调用接下来完成model,及view层的调用1.首先建立一个模型类,自动加载pdo操作数据库namespace core\lib;class model extends \PDO{ public function __construct() { $dsn="mysql:host=localhos
2016-12-25 16:33:31
416
原创 如何封装一个自己的mvc框架(二)
1.首先需要写一个开口文件主要包括以下几点 1.定义常量(路由) 2.加载类库 3.启动框架/** * 1.入口文件 * 2.定义常量(路由) * 3.加载类库 * 4.启动框架 *///定义根目录define("ROOT",dirname(__FILE__));//定义核心文件目录define('CORE', ROO
2016-12-24 17:05:02
814
原创 如何封装一个自己的mvc框架(一)
一、为什么要自行开发一个mvc框架1,为了更快的开发的效率在市场上主要用到的mvc框架有三种:(1)TP简单好上手,大部分国人都喜欢用TP(2)CI命名规范,但是代码比较长(3)laravel号称最优雅的框架,但是里面方法太多学习成本高所以我们需要封装一个适合自己的mvc框架2,为了更高的运行效率我们自己开发主要是可以根据我们自己的项目需求,尽量减少不必要的
2016-12-24 16:43:53
1685
原创 git远程推送,远程克隆
1.创建一个用户zph(让此用户提供git on server),密码设置为12345678# useradd zph # passwd zph 3.切换到zph用户# su zph $ cd 4.创建一个远程仓库$ git init --bare sample.git 5.在windows下(192.168.1.5),打开
2016-11-18 17:04:40
1226
原创 sphinx用法
//引入类文件 include'sphinxapi.php'; //实例化类 $cl = new SphinxClient (); $cl->SetServer ( '127.0.0.1', 9312); $cl->SetConnectTimeout ( 3 );
2016-10-26 10:46:02
284
转载 session入库,session入缓存
1,session入库//session入库function sess_open(){ echo __FUNCTION__; $link = mysql_connect('127.0.0.1', 'root', 'root'); mysql_query('set names utf8'); mysql_query('use practice');
2016-10-24 14:28:03
287
原创 单点登陆简单实现
1、登陆站点login.php代码header('Content-Type:text/html; charset=utf-8');if(isset($_GET['logout'])){ setcookie('sign','',-300); unset($_GET['logout']); header("location:".$_GET['callbac
2016-10-24 14:20:16
221
转载 linux数据库分配权限后mysql数据库消失解决办法
第一种情况[root@localhost ~]# mysql -uroot -p123 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 7 Server version: 5.0.77 Source distribution Ty
2016-10-17 15:57:36
2594
原创 yii框架ajax上传
js代码 $("input#upload").change(function () { $.ajaxFileUpload({
2016-10-13 08:47:17
701
转载 js闭包原理
包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。一、变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域。 变量的作用域无非就是两种:全局变量和局部变量。 Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 Js代码 var n=999; function
2016-10-11 11:08:19
284
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人