- 博客(57)
- 资源 (1)
- 收藏
- 关注
原创 CentOS 7.9 nginx/php7
php-fpm 要写开机启动脚本 放到/etc/init.d目录下 然后。ps -ef | grep nginx 可以看到nginx的进程。这时可以web访问网站了,但不支持php文件。2. 安装PHP7.0.33。这样就可以访问php文件了。1. 安装nginx。
2024-08-16 22:15:49
336
原创 lumen 用户认证
Lumen 中实现用户认证的配置文件位于config/auth.php。在底层代码中,Lumen 的认证组件由“guards”和“providers”组成,Guard 定义了用户在每个请求中如何实现认证,例如,Laravel 通过 session guard来维护 Session 存储的状态、Cookie 以及 token guard,token guard 是认证用户发送请求
2017-07-11 09:15:45
2150
翻译 阿里云 CentOS7.4 LNMP 环境搭建
CentOS 7.4 nginx 1.12.2 PHP 7.0.25 Mysql使用阿里云RDS1. 安装nginxyum install nginxnginx -v nginx version: nginx/1.12.2vi /etc/nginx/nginx.conf error_log /var/log/nginx/error.lo...
2017-05-19 13:36:51
495
1
翻译 PHP closure
(PHP 5 >= 5.3.0, PHP 7) Class used to represent anonymous functions.function createGreeter($who) { return function() use ($who) { echo "Hello $who";
2017-02-11 12:28:48
1243
转载 PHP explode 按照固定字符截字符串成数组
$data = explode(',',$ids);if($data){ print_r($data);}else{echo'null';}如果 $ids为空 或者 '', $data 也不为空数组 而是有一个空的元素 $data[0]可以用 isset($data[0]) && $data[0] 来判断 然后 foreach($data ....)
2016-05-27 16:16:59
671
原创 XAMPP 配置
默认安装路径: C:\xampp7\子网站安放目录: C:\xampp7\htdocsapache 配置文件: C:\xampp7\apache\conf\http.confvhost 配置文件: C:\xampp7\apache\conf\extrahosts 配置文件: C:\Windows\System32\drivers\etc
2016-04-21 16:55:10
1549
转载 PHP const 与 define的区别
1、const用于类成员变量定义,一旦定义且不能改变其值。define定义全局常量,在任何地方都可以访问。2、define不能在类中定义而const可以。 3、const不能在条件语句中定义常量if (...) { const FOO = 'BAR'; // invalid } but if (...) { de
2016-03-30 16:54:29
362
翻译 PHP monolog
Monolog是PHP的一个日志类库。相比于其他的日志类库,它有以下的特点:功能强大。可以把日志发送到文件、socket、邮箱、数据库和各种web services。遵循PSR3的接口规范。可以很轻易的替换成其他遵循同一规范的日志类库。良好的扩展性。通过Handler、Formatter和Processor这几个接口,可以对Monolog类库进行各种扩展和自定义。
2016-03-29 20:43:09
2004
转载 微信支付成功后推荐关注栏目规则:
1. 刷卡支付默认有推荐关注2. 公众号支付和扫码支付需要5元以上才有推荐关注3. APP支付默认没有,需要申请配置,需要有一定用户规模才可以申请4. 已经关注的不展示推荐栏5. 服务号未设置头像的在IOS不展示推荐关注栏6. 用户取消过关注的默认不勾选7. 服务商模式的,需要在特约商户开发配置页设置推荐关注appid8. 订阅号目前是不会有默认推荐关注的
2016-03-28 17:59:00
3301
翻译 PHP PDO 防止SQL注入
使用PDO的好处:1> 防止SQL注入2> 提高执行效率 每条SQL执行前,MYSQL数据库都需要先进行编译(即便是一个空格也可能引起重新编译)。在循环执行多条数据时,使用prepare方式传入不同参数可以减少编译时间大部分常见数据库都支持prepare语句,即便数据库不支持,pdo也会采用模拟的方式来实现,简单来说就是pdo自己对数据做quote,然后把结果拼接成sql再执行
2016-03-28 10:41:43
2218
原创 返璞归真 笔记开始
从2015年3月14日开始公众号,然后APP开发至今APP约280000用户,中间坎坎坷坷,但总体还算顺利错误大事记:Top 1:P0 3月8日大促开始2个半小时的无法访问Top 2:P0 阿里云服务器杭州A区事故,所有机器宕机Top 3:P0 7牛服务器因光纤挖断,导致所有图片无法显示Top 4:P1 管家版上线时分页bug导致管家无法配送Top 5:P1 晚上定时任务出
2016-03-25 11:43:51
545
翻译 SQL编程规范
1.原则 首先为人编写程序,其次才是计算机,只有易读、易维护的软件代码才是有生命力的。 保持代码的简明清晰,避免过分的编程技巧,否则会降低程序的可读性。 关键字的大写或小写保持统一,字段的大写或小写也要保持统一 尽可能复用、修正老的代码,可以很大的提高效率。如查询作为一个方法,查询的条件作为方法的参数是一个重用度很高的办法。 尽量减少同样的错
2016-03-25 09:11:21
501
翻译 mysql 联结 子查询
在可以指定一个表名的任何地方,都可以一个括号括起来的join子句替换1. 自然联结inner join (默认联结)left (outer) join 左表可以为NULLright (outer) join 右表可以为NULLfull (outner) join 左表和右表都可以为NULL2. cross join 笛卡尔积返回两张表的所有字段, 不去
2016-03-25 00:03:45
425
翻译 nginx 配置
nginx 规则处理请求是在对路径匹配在URI规范化以后进行. 所谓规范化, 就是先将URI中形如“%XX”的编码字符进行解码, 再解析URI中的相对路径“.”和“..”部分, 另外还可能会压缩相邻的两个或多个斜线成为一个斜线:语法规则: location [=|~|~*|^~|@] /uri/ { … }= 开头表示精确匹配, 必须完全吻合才会执行;^~ 开头
2016-03-11 16:40:41
736
原创 张小龙 与 微信
2010年10月,腾讯广州研发中心产品团队开始在团队经理张小龙的带领下,开始着手微信的开发。2014年8月15日,微信及webchat 月活跃账户至4.38亿。 张小龙(腾讯副总裁、FoxMail创始人) 1969年12月生于湖南,Foxmail创始人,微信创始人,腾讯公司高级副总裁。毕业于华中科技大学电信系,分别获得学士、硕士学位。曾开发国产电子邮件客户端——Fo
2014-08-21 14:01:41
1802
原创 KVM QEMU 解读(原理及源码分析)
本文涉及到libvert,virt-manager,KVM,以及qemu,将按照操作的顺序依次记录1. RHEL的虚拟机管理界面virt-manager,命令行程序是virsh。virt-manager和virsh都是通过调用libvirt-API来实现的。2. 在libvritd 启动过程中会注册qemuDriver -> qemudDomainStart : qemudDomainSt
2013-07-09 09:02:18
8076
原创 MSI 与 MSIX
PCI 规范2.2 描述了MSI, optional MSI 目的:1. 允许一个设备申请多个中断,避免了共享中断,提高了效率,(最多32, 必须是2的倍数,MSIX则最多2048个);2. 当设备写入内存数据然后发起中断的时候有可能数据并未写入,CPU必须读设备的寄存器才能确定写完了;但是如果MSI中断,同样是写操作,中断肯定在数据写完以后才能收到;MSI操作: 在configrat
2013-04-10 17:56:47
2796
原创 VMware ESXi v5.1.0 / vSphere client v5.1.0 配置SRIOV
1. install the VMware ESXi v5.1.0 on the host (USB or DVD or via network)2. install the client in personal desktop3. create VM and install client OS(RHEL 6)4. install the VMware TOOLs in the cli
2013-04-07 13:54:56
2624
转载 互联网史-chinaren与校内
引子:我有一个朋友,2000年大学毕业后昂然入职亿唐,倒闭后2002年入职多来米,倒闭后2003年再入职易趣,半倒闭后2005年入职我有网,倒闭后2006年入职一拍,倒闭后2007年入职ppg,倒闭后2009年入职饭否,被关后2010年入职品聚,2011年底又倒闭了。2012年他企图申请入党。。。(@李晨冈)被国安局秘密逮捕…… 插点背景知识:王兴:1997年被保送到清华大学电子工程系
2012-11-15 14:49:27
1982
原创 linux 电源管理
ACPI共有六种状态,分别是S0到S5,它们代表的含义分别是: S0--实际上这就是我们平常的工作状态,所有设备全开,功耗一般会超过80W; S1--也称为POS(Power on Suspend),这时除了通过CPU时钟控制器将CPU关闭之外,其他的部件仍然正常工作,这时的功耗一般在30W以下。In this state, no system context is lost (CPU
2012-10-24 15:58:08
7221
原创 RHEL 6.2 安装步骤
1. 配置BIOS网络启动,自动从dhcp获取IP,加载image; RHEL6.2 不能在文本模式下安装,只能通过vnc远程安装(说是为了避免文本模式下不能修改分区)2. 默认情况下,软件包非常少。如果后续要安装的话,需要用yum mount -t nfs server:/ISO /mnt mount -o loop /mnt/*.iso /mnt/iso
2012-10-16 14:21:47
673
原创 linux udev 机制
1. linux的热插拔事件由kernel通过中断发现(比如,USB设备插入系统时,usb host会检测到这一事件,然后向CPU发送中断请求,并获取该usb设备的信息,usb core会根据usb id来匹配调用一个合适的usb driver处理该usb设备),然后kobject_add需要为用户空间添加信息(通过sysfs文件系统实现。sysfs文件系统用来表示设备的结构.将设备的层次结构形象
2012-09-26 11:21:40
2574
翻译 LINUX IO端口、IO内存释疑
IO端口是指接口电路中能够被CPU直接访问的寄存器,一般有数据端口、控制端口和状态端口。每个连接到IO总线的设备都有自己的地址(集合),即端口,可以被映射到物理地址空间。IO内存和IO端口的主要区别是,IO端口操作具有边际效应,而内存则没有(所以可以用多种方法进行优化,比如重新排序、告诉缓存等)。 使用IO内存前要先申请request_mem_region,然后ioremap映射;使用
2012-09-21 13:29:59
712
原创 Linux 并发、竞态管理的实现机制
linux下用于并发、竞态管理的机制有:spinlock_t,semaphore,mutex,completion,atomic_t等, 下面依次分析其实现原理1. spinlock_t:其实就是一个volatile unsigned int。在lock的时候关闭bh,调用lock锁住内存总线禁止其他cpu访问内存,然后将变量从内存读出减一后再写入。spin_unlock只是锁住内存总线的情况
2012-09-19 17:39:35
867
原创 linux 设备模型
2.6内核的设备模型支持以下特性:1. 电源管理2. 与用户空间通信3. 热插拔设备4. 设备类型管理5. 对象生命周期 §1. 底层组件kobject, kset, kobj_type, ksubsystem(merge to kset after 2.6.31) kobject对象有名字和引用计数。每个kobject对应一个kobj_type(由kobject结
2012-09-06 17:39:09
957
原创 Linux 系统启动过程详解
以RedHat9.0和i386平台为例----BIOS第一步:PC在上电以后,CPU从地址FFFF:0000开始执行(这个地址在ROM BIOS中,ROM BIOS一般是在FEOOOh到FFFFFh中),无论是Award BIOS还是AMI BIOS,这里只是一条跳转指令,跳到系统BIOS中真正的启动代码处。第二步: BIOS的首先进行POST(Power-On Self
2012-09-06 17:36:13
3382
翻译 多线程 模型
有关多线程实现的疑问, 暂时想通一部分, 以此为记。 (网上很多资料ms矛盾, 这里仅取最*可能*的)LWP: 轻量级线程,建立在内核上并由内核支持的用户线程。它由clone()系统调用创建,参数是CLONE_VM(即与父进程共享地址空间和系统资源)。每一个LWP均与内核线程关联,由内核管理并像普通进程一样调度。根据管理线程(即调度者)是在用户态和内核态分为内核级线程和用户级线程,前者更
2012-08-30 10:53:16
813
转载 Hadoop InputFormat浅析
在执行一个Job的时候,Hadoop会将输入数据划分成N个Split,然后启动相应的N个Map程序来分别处理它们。数据如何划分?Split如何调度(如何决定处理Split的Map程序应该运行在哪台TaskTracker机器上)?划分后的数据又如何读取?这就是本文所要讨论的问题。先从一张经典的MapReduce工作流程图出发:1、运行mapred程序;2、本次运行将生成一
2012-06-18 11:10:02
540
原创 安装hadoop-新手安装篇
参考《在windows上安装hadoop教程》1. 安装SDK 版本在1.6以上,推荐1.6.0_32 注意: 安装的时候JDK安装的路径不要含有空格及中文字符,否则出现莫名其妙的路径找不到的问题,原因在于java对于空格和中文字符的处理。 2. 安装cygwin下载setup.exe后运行,选择download site时 填http://www.cygwin.cn/pu
2012-06-10 16:33:43
613
原创 内核调度 之schedule
学OS的时候经常讲到处理机(即CPU)的调度也即任务的调度,现如今与linux的内核代码联系起来。理解处理机调度要回答3个问题:1> 调度的时机2> 调度的策略3> 调度的实现 高级调度: 为任务建立PCB,装入内存中级调度: 为提高吞吐量和利用率,将任务临时换出内存(swap)低级调度: 进程调度,为进程分配CPU 考虑的因素:公平 资源利用率
2012-05-18 11:41:41
1182
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人