- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 Linux中创建sftp用户并限制目录权限
查看vsftpd配置文件,查看日志打印文件位置,然而该日志中并未保存ftp的登录验证日志。(注:设置用户sftpuser,如果设置拥有者为root,表示该目录sftpuser没有权限读写,在该目录下建立其它目录,赋权给sftpuser用户读写权限;家目录简单来说,就是在/home下的用户命令,默认每个用户在/home中都是有与用户名一样的文件夹。注:这里的目录sftpuser 权限也只能是755,否则无法限制目录。7. 目录权限(注:该目录权限最大为755,设置成777会报错)修改如下内容,并保存退出。
2023-07-01 10:25:44
3094
原创 thinkphp6 消息队列think-queue(完整版)
https://blog.youkuaiyun.com/qq_21273321/article/details/126283904
2023-05-18 13:24:25
6269
原创 国内外IP线路测试网址收藏
一站式的网站、网络运维工具,可自助诊断域名、dns、网站、备案等建站中常见问题;提供强大的网络拨测工具,通过全球各地探测点对服务做http、ping、dns、路由等拨测,检测网络质量分析服务故障;拨测(boce.com)-免费提供在线ping检测站长工具,快速检测出网络延迟情况;通过ping测试工具来判断服务器在全国各个地区的ping响应速度。ping检测-ping测试-ping值-在线ping检测-ping工具-拨测|免费的域名检测工具网-站长工具。
2022-08-22 09:10:34
7421
1
原创 Beyond Compare 4提示已经过了30天试用期
第一条测试有效1. 修改配置文件(C:\Users\gaojs\AppData\Roaming\BCompare\BCompare.ini)中的时间戳。 https://blog.youkuaiyun.com/Minle_/article/details/79466501 打开Beyond Compare 4,提示已经超出30天试用期限制,解决方法: 1.修改C:\Program Files\Beyond Compare 4\BCUnrar.dll,这个文件重命名或者直接删除,则会新增30天试用期,再次打开提示还.
2021-06-16 17:06:41
2435
1
转载 php爬虫采集类-phpQuery:支持抓取网站,非常强大的php类库
QueryList 简介QueryList是一套简洁、优雅、可扩展的PHP采集工具(爬虫),基于phpQuery。 特性拥有与jQuery完全相同的CSS3 DOM选择器 拥有与jQuery完全相同的DOM操作API 拥有通用的列表采集方案 拥有强大的HTTP请求套件,轻松实现如:模拟登陆、伪造浏览器、HTTP代理等意复杂的网络请求 拥有乱码解决方案 拥有强...
2019-01-15 12:11:20
7896
转载 php表单加入Token防止重复提交
<?php/** PHP简单利用token防止表单重复提交* 此处理方法纯粹是为了给初学者参考*/session_start();function set_token() { $_SESSION['token'] = md5(microtime(true));}function valid_token() { $return = $_REQUEST['token'] ===
2016-12-23 10:25:57
706
原创 ThinkPHP微信实例——JSSDK图像接口多张图片上传下载并将图片流写入本地
模板页面test.html发布图片最多可添加9张作品 wx.config({debug: false,appId: '{$signPackage["appid"]}',timestamp: {$signPackage["timestamp"]},nonceStr: '{$signPackage["noncestr"]}',sign
2016-12-19 16:32:29
4636
转载 thinkphp中的自动验证
thinkphp中的 $_validated 自动验证array(验证字段,验证规则,错误提示,[验证条件,附加规则,验证时间])1.验证字段需要验证的表单字段名称,这个字段不一定是数据库字段,也可以是表单的一些辅助字段,例如确认密码和验证码等等。有个别验证规则和字段无关的情况下,验证字段是可以随意设置的,例如expire有效期规则是和表单字段无关的。 2.验证规则
2016-11-30 16:05:19
289
转载 ThinkPHP中initialize和construct的不同
ThinkPHP中initialize()和construct()这两个函数都可以理解为构造函数,前面一个是tp框架独有的,后面的是php构造函数,那么这两个有什么不同呢? 在网上搜索,很多答案是两者是一样的,ThinkPHP中initialize相当于php的construct,这么说是错误的,如果这样,tp为什么不用construct,而要自己弄一个ThinkPHP版的init
2016-11-25 09:56:26
313
转载 mysql存储过程详解
1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(StoredProcedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在
2016-11-23 15:20:57
328
原创 PHP多种序列化与反序列化的方法
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。1. serialize和unserialize函数这两个是序列化和反序列化PHP中数据的常用函数。12345678910111213
2016-11-21 09:38:52
631
原创 PHP设计模式-工厂模式
<?php// 定义形状的公共功能:获取周长和面积。interface IShape {function getCircum();function getArea();}// 定义矩形类class Rectangle implements IShape {private $width, $height;public function __construct($width,
2016-11-16 17:56:51
229
原创 PHP设计模式-单例模式
//单例模式/*** 设计模式之单例模式* $conn* 构造函数和析构函数必须声明为私有,防止外部程序new* 类从而失去单例模式的意义* getInstance()方法必须设置为公有的,必须调用此方法* 以返回实例的一个引用* ::操作符只能访问静态变量和静态函数* new对象都会消耗内存* 使用场景:最常用的地方是数据库连接。* 使用单例模式生成一个对象后,* 该对象
2016-11-16 17:54:38
304
原创 PHP cookie存放数组
下面介绍两种方法来实现方法一:先用serialize序列化数组,再存入COOKIE ,读出来时用unserialize得到原来的数组//存入 $arr = array(1,2,3);$arr_str = serialize($arr); setcookie("a",$arr_str); //取出 $arr_str = $_COOKIE['
2016-11-16 10:56:40
5718
原创 PHP setcookie存储值的范围
代码$a = "";for($i=0;$i<907;$i++){ $a .= "哈";} setcookie('str',$a);echo strlen($a);当$i但是当循环给的是字符串而不是汉字 “哈” 的时候$a = "";for($i=0;$i<8173;$i++){ $a .= "a";} setcookie('str',$a);echo strlen(
2016-11-16 10:29:23
1876
原创 PHP spl_autoload_register()
http://www.cnblogs.com/myluke/archive/2011/06/25/2090119.html
2016-11-15 16:29:25
317
原创 关于define与defined的区别
1.define用来定义一个常量,常量也是全局范围的。不用管作用域就可以在脚本的任何地方访问常量。一个常量一旦被定义,就不能再改变或者取消定义如: define("path","root/www/web") ,define 为常量的值root/www/web2.defined用来检测常量有没有被定义,若常量存在,则返回true,否则返回 false如: if(defined...
2016-10-21 14:57:07
20059
转载 PHP命名空间(Namespace)的使用详解
对于命名空间,官方文档已经说得很详细[查看],我在这里做了一下实践和总结。命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀。例:项目中有两个模块:article和message board,它们各自有一个处理用户留言的类Comment。之后我可能想要增加对所有
2016-10-21 14:54:26
290
转载 lnmp下配置PHP虚拟主机vhost
这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:IP地址: 202.55.1.100域名1 example1.com 放在 /www/example1配置 nginx virtual hosting 的基本思路和步骤如下:把这个站点 example1.com放到 nginx 可以访问的目录 /www/给每个站点分别创建一个 nginx 配置文件 examp
2016-10-10 22:16:58
7541
原创 windows 连接到VM linux 通过FTP协议传输文件
1.在linux系统(centos6.5) 装上FTP服务用yum源安装 vsftp 安装命令:yum install vsftpd开启ftp服务[root@ ~]# service vsftpd startStarting vsftpd for vsftpd: [ OK ]进入vsftpd
2016-09-18 10:23:53
3413
转载 mysql explain详解
一.语法explain select …例如: explain select * from user where name=’ranger’;二.explain输出解释mysql> explain select * from user where name=’ranger’\G*************************** 1. row ***************
2016-09-13 16:49:50
227
转载 深入理解HTTP协议、HTTP协议原理分析
http协议学习系列1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义
2016-09-13 15:51:06
504
转载 由浅入深理解索引的实现
这篇文章是介绍MySQL数据库中的索引是如何根据需求一步步演变最终成为B+树结构的以及针对B+树索引的查询,插入,删除,更新等操作的处理方法。Oracle和DB2数据库索引的实现基本上也是大同小异的。文章写得很通俗易懂,就转在这了。关于B+树和索引内部结构可以参考:《B 树、B- 树、B+ 树和B* 树》和《深入理解DB2索引(Index)》。00 – 背景知识-
2016-09-13 15:41:30
837
转载 MySQL索引原理与慢查询优化
索引目的索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者w开头的单词呢?是不是觉得如果没有索引,这个事情根本无法完成?索引原理除了词典,生活中随处可见索引的例子,如火车站的车次表、图书的目录等。它们
2016-09-13 15:34:41
244
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人