php技术
ijijni
这个作者很懒,什么都没留下…
展开
-
Centos7 yum 安装nginx
1.首先新增nginx源vi /etc/yum.repos.d/nginx.repo添加以下内容[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx...原创 2019-05-07 09:41:26 · 214 阅读 · 0 评论 -
解决phpqrcode不能输出二维码的问题
首先确保你的PHP环境开启gd库,其次,确保你调用QRcode::png()后加上exit();再次,加入输入类型和清楚缓存header('Content-Type: image/png');ob_clean();原创 2017-12-21 11:56:17 · 2445 阅读 · 0 评论 -
Linux下为PHP添加新扩展库的方法
如果编译时未添加某个扩展,可以采取一下方式添加新扩展比如我要添加添加FTP扩展1、找到原来的源码包解压一下如:php-7.0。25进入到到FTP的扩展目录/usr/src/php-7.0.25/ext/ftp2.调用phpize程序生成编译配置文件root@dns ftp]# /usr/local/php7/bin/phpize Configuring for原创 2017-11-03 16:57:55 · 350 阅读 · 0 评论 -
php7编译安装
一、安装前首先到php的官网上面下载php7的版本(http://php.net/downloads.php)我下载的是php7.1.5版本.二、开始安装:下载完毕后解压并进入解压后的目录:因为编译安装php前,它所依赖的各种库和包可能还未被安装,所以先yum安装php中常用的必须库:yum install libxml2 libxml2-devel openssl原创 2017-11-03 15:59:54 · 354 阅读 · 0 评论 -
阿里云oss上传文件,每次只能上传很小一部分
今天又遇到使用阿里云oss上传文件时,只上传了很小一部分,比如上传图片,只上传了50b,以前也遇到过这个问题,但是之前怎么解决的搞忘了。通过调试最后发现,是自己调用阿里云字符串上传方法putObject,因此程序把文件地址读成了字符串,换成正确的上传方法uploadFile,一切搞定原创 2017-10-26 10:58:24 · 1905 阅读 · 0 评论 -
添加服务到开机自动启动(centos7开机自启动nginx,php-fpm)
说明参考网络上其他人文章。将他人技术文章亲自测试并总结补充。开机自启动nginx,php-fpm(其他服务类似)centos 7以上是用Systemd进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。 Systemd服务文件以.service结尾,比如现在要建立ngi...原创 2017-11-12 18:21:10 · 10450 阅读 · 2 评论 -
NGINX配置多域名
方法一:多个.conf方法(优点是灵活,缺点就是站点比较多配置起来麻烦)这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:IP地址: 192.168.1.100域名1 example1.com 放在 /www/example1域名2 example2.com 放在 /www/example2 配置 nginx virtual ho原创 2017-10-15 10:18:16 · 305 阅读 · 0 评论 -
laravel开启cors
新建中间件,在中间件中加入$response=$next($request); $response->header('Access-Control-Allow-Origin','*'); $response->header('Access-Control-Allow-Headers','Origin, Content-Type, Cookie, Accept原创 2017-10-31 09:31:48 · 1188 阅读 · 0 评论 -
laravel路由别名
在阅读laravel文档中发现从5.4开始的文档中,在介绍命名路由部分,只介绍了,在路由定义之后使用 name 方法链的方式来定义该路由的名称。但是在实际操作中其实还可以使用as方法链进行定义,此方法在5.3及以前的文档中有介绍,并且在资源路由中使用此方法链更方便定义别名。如:命名路由为生成 URL 或重定向提供了便利。实现也很简单,在定义路由时使用数组键 as 指定路由名称:原创 2017-11-08 15:46:08 · 6201 阅读 · 0 评论 -
解决git每次pull或者push时输入密码问题
每次Git进行pull或者push是都要提示输入用户名和密码很麻烦,解决办法:1.首先需要创建ssh公钥,具体办法请看,http://git.mydoc.io/?t=1547122.在添加ssh公钥后,每次操作任然要进行账号密码输入,原因是,没有使用加密的通道进行传输可进行查看:git remote -v展示信息如下:origin https://github.com/ijij原创 2017-12-15 11:20:00 · 265 阅读 · 0 评论 -
数据库设计的几个建议
本文导读:数据库设计是信息系统设计的基础,一个好的数据库设计在满足了软件需求之外,还要易维护、易扩充等等要求,还要考虑到数据的一致性、冗余性、访问效率,数据库设计包括:库的设计,表的设计,字段的设计,主键和外键的设计,索引设计,约束设计等等,下面介绍数据库设计的几个建议一、一般好的数据库设计需要注意以下几点 1、一个好的数据库设计首先要满足用户的需求所有信息原创 2017-12-15 15:55:08 · 1134 阅读 · 0 评论 -
git 换行符LF与CRLF转换问题
一、背景在各操作系统下,文本文件所使用的换行符是不一样的。UNIX/Linux 使用的是 0x0A(LF),早期的 Mac OS 使用的是0x0D(CR),后来的 OS X 在更换内核后与 UNIX 保持一致了。但 DOS/Windows 一直使用 0x0D0A(CRLF)作为换行符。Git提供了一个“换行符自动转换”功能。这个功能默认处于“自动模式”,当你在签出文件时,它试图将 UNIX转载 2018-02-05 18:12:48 · 347 阅读 · 0 评论 -
Centos7 编译安装PHP7.3
1.首先更新依赖包。yum -y update2.安装依赖包yum -y install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-...原创 2019-05-07 09:28:27 · 4807 阅读 · 3 评论 -
AWS硬盘扩容
先在EBS把硬盘加大。。只可加大不可减少。。适当加大fdisk -l 看到/dev/xvda这个盘已经变成10G将存储卷/dev/xvda和分区/dev/xvda1变成一样大 (lsblk可查看两者的大小和关系)growpart /dev/xvda 1刷新磁盘(centos 7)xfs_growfs /dev/xvda1 再用df -h 查看(centos 6 ) re...原创 2019-04-17 17:49:39 · 655 阅读 · 0 评论 -
PHP SSL operation failed with code 1. And more 错误的解决方案
在使用例如file_get_contents这样的函数读取https的资源的时候,遇到这个报错信息首先确认加载了openssl模块 并且allow_url_fopen是打开状态1.前往ca证书下载地址下载下来证书2.上传至服务器的php的可读目录3.配置php.ini 中的openssl.cafile[openssl]openssl.cafile=/***php可读目录***/c...原创 2019-03-22 15:35:48 · 3698 阅读 · 0 评论 -
解决 cURL error 60: SSL certificate problem: unable to get local issuer certificate
这是由于在本地调试时用ssl进行远程请求,但是本地没有秘钥稳健所导致、。解决办法有两种第一种:在使用curl_exec()之前跳过ssl检查项curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 第二种:访问https://curl.haxx.se/docs/caextract.html,下载cacert.pem,并在php...原创 2019-01-18 11:39:08 · 10669 阅读 · 0 评论 -
laravel ajax验证支持,返回json错误信息
改造request验证类,添加failedValidation方法:<?phpnamespace App\Http\Requests\Index;use Illuminate\Foundation\Http\FormRequest;use Illuminate\Validation\Rule;use Illuminate\Contracts\Validation\Valid...原创 2018-12-25 14:10:00 · 1435 阅读 · 0 评论 -
php十进制颜色转rgb颜色
function toRgb($color){ $rgb=[]; $b = $color & 0xff; $g = ($color >> 8) & 0xff; $r = ($color >> 16) & 0xff; $rgb[0]=$r; $...原创 2018-11-22 11:54:17 · 384 阅读 · 0 评论 -
如何写出安全的API接口(参数加密+超时处理+私钥验证+Https)
下面是五种api接口1.完全开放的接口有没有这样的接口,谁都可以调用,谁都可以访问,不受时间空间限制,只要能连上互联网就能调用,毫无安全可言。实话说,这样的接口我们天天都在接触,你查快递,你查天气预报,你查飞机,火车班次等,这些都是有公共的接口。 2.接口参数加密(基础加密) 你写个接口,你只想让特定的调用方使用,你把这些调用的人叫到一个小屋子,给他们宣布说我这里有个接口只打算给你们用,我给你们每...原创 2018-06-07 09:47:19 · 1513 阅读 · 0 评论 -
[加密]--PHP 使用非对称加密算法(RSA)
解释非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。使用场景PHP 为客户端(Android,Ios)编写API,对数据进行解密。创建...转载 2018-06-12 14:34:12 · 353 阅读 · 0 评论 -
git push的时候每次都要输入用户名和密码的问题解决
发现每次git push origin master的时候都要输入用户名和密码原因是在添加远程库的时候使用了https的方式。。所以每次都要用https的方式push到远程库查看使用的传输协议:git remote -v重新设置成ssh的方式:git remote rm origingit remote add origin git@github.com:username/repository....原创 2018-03-22 09:47:03 · 413 阅读 · 0 评论 -
git pull时出现冲突 放弃本地修改,使远程库内容强制覆盖本地代码
git fetch --all //只是下载代码到本地,不进行合并操作git reset --hard origin/master //把HEAD指向最新下载的版本原创 2018-02-26 14:42:32 · 2235 阅读 · 0 评论 -
PHP5.6之后php-fpm重启
1、先杀死php-fpmkillall php-fpm2、重启/etc/init.d/php-fpm原创 2017-10-12 09:42:57 · 704 阅读 · 0 评论 -
Nginx执行php,显示“No input file specified. ”的处理方法
今天在配置nginx多域名时出现No input file specified,经过多方寻找原因,最后发现是【问题原因】导致“No input file specified. ”这个问题的原因,是因为nginx的配置不正确,从而导致CGI获取参数错误。简单来说,是因为$document_root这个变量尚未定义。Nginx的配置文件中,fastcgi原创 2017-09-22 10:08:05 · 1052 阅读 · 0 评论 -
PHP解决抢购、秒杀、抢楼、抽奖等阻塞式高并发库存防控超量的思路方法
如今在电商行业里,秒杀抢购活动已经是商家常用促销手段。但是库存数量有限,而同时下单人数超过了库存量,就会导致商品超卖甚至库存变负数的问题。又比如:抢购火车票、论坛抢楼、抽奖乃至爆红微博评论等也会引发阻塞式高并发问题。如果不做任何措施可能在高瞬间造成服务器瘫痪,如何解决这个问题呢?这里提出个人认为比较可行的几个思路方法:方案一:使用消息队列来实现可以基于例如MemcacheQ原创 2017-09-20 07:57:52 · 405 阅读 · 0 评论 -
CentOS7 下安装和配置本地用户登录VSFTP服务器
一、安装VSFTP[plain] view plain copy# yum -y install vsftpd 注意提升权限:[plain] view plain copy#su root 二、配置vsftpd.conf 文件[plain] v原创 2017-01-08 21:05:40 · 1162 阅读 · 0 评论 -
vsftp出现/usr/bin/ld: cannot find -lcap
/usr/bin/ld: cannot find -lcapcollect2: ld returned 1 exit statusmake: *** [vsftpd] Error 1解决:yum install libcap-develinstall时出现:install: cannot create regular file `/usr/local/man/m原创 2017-01-07 22:06:53 · 844 阅读 · 0 评论 -
php for Linux之MySQL扩展模块安装与配置
安装PHP扩展,已经有太多人写过了,随便百度、谷歌一下,都可以查到各种PHP扩展的安装方法,今天我要写的是,在本地没有安装msyql应用的情况下,如何安装配置php的mysql扩展。首先说说为什么会有这种需求吧,今年可以说是VPS,即云主机开始最火的一年,很多小公司及个人,都大量购买云主机,云数据库等等。当我们的网站或者应用系统,使用RDS即阿里云的云数据库的时候,我们的云主机是不需要安装mysq原创 2017-01-07 21:23:15 · 871 阅读 · 0 评论 -
centos 编译php5
./configure \--prefix=/lamp/php53 \--exec-prefix=/lamp/php53 \--with-config-file-path=/lamp/php53/etc \ --with-curl \ --with-freetype-dir \ --with-gd \--with-apxs2=/lamp/apache/bin/apxs原创 2017-01-07 20:03:07 · 278 阅读 · 0 评论 -
关于新浪微博开放平台第三方登录接口问题
我在做新浪微博授权登录时,遇到这么一个问题手工输入新浪的账号密码,可以跳到我的回调页获取token,新浪用户信息。但是用他们的二维码扫码登录,token就获取不到了,这是为什么呢?通过阅读新浪微博API接口文档,文档中有这么一句提示:HTTP请求方式:POST这句话太简单了,你们想要人家POST什么?让人认为所有的参数都要作为POST发送过去。可事实偏偏原创 2016-12-30 12:45:24 · 2973 阅读 · 0 评论 -
windows使用git时出现:warning: LF will be replaced by CRLF
windows中的换行符为 CRLF, 而在Linux下的换行符为LF,所以在执行add . 时出现提示,解决办法:$ rm -rf .git // 删除.git $ git config --global core.autocrlf false //禁用自动转换 然后重新执行:$ git init $ git add .原创 2016-12-14 11:30:49 · 332 阅读 · 0 评论 -
千万级数据运维小试牛刀
昨天因为需要对数据库进行压力测试和数据库优化测试,就找了一个有2千多万条数据的sql文件,大概有5g左右,首先我需要打开sql文件查看其文件编码,因为我的数据库设计的是ut8编码(现在utf8编码用的范围还是比较广的),打开发现sql文件发现是gbk编码,所以另存为了utf8编码,打开这种超大文件还是要话费一点时间的,文件内容如下然后利用navicat导原创 2016-11-25 09:57:33 · 612 阅读 · 0 评论 -
Linux下编译安装php扩展php_pdo_mysql
1. 下载扩展包源码 单独下载扩展包源码 (最后还是下载PHP源码包的...) 地址:http://pecl.php.net/package/PDO_MYSQL中的扩展包.2、解压文件 tar zxvf PDO_MYSQL-1.0.2.tgz3、检查MySQL的头文件 查看/usr/local/include/目录中是否包含m原创 2016-11-24 17:30:23 · 351 阅读 · 0 评论 -
[php]对服务器进行一致性hash分布算法
<?php /** * 对服务器进行一致性hash分布算法 */ class HashRing { private $servers = array(); private $nodeList = array(); private $nodeHashList = array(); private $nodeTotalNum = 0;原创 2016-11-22 14:40:23 · 342 阅读 · 0 评论 -
imagefilledarc函数研究
imagefilledarc函数是php中用来画饼状图的函数,存在于GD库中,其参数为boolimagefilledarc ( resource $image ,int $cx ,int $cy ,int $width ,int $height ,int $start ,int $end ,int $color ,int $style ),今天研究的是最后一原创 2016-03-19 15:23:43 · 517 阅读 · 0 评论 -
使用相对Url无缝切换 HTTP HTTPS
在HTTPS的网站下,如果要访问HTTP资源,那么一般浏览器会弹出窗口询问用户是否允许加载不安全内容,云云。为了避免出现这样干扰用户的情况,所有网页下请求的资源都都必须是HTTPS资源。如果你的站点支持HTTP和HTTPS两种方式访问,而实际网站只有一份的话,这种情况下,你可以使用相对Url的方式改写网页内资源的请求Url。省略Scheme的相对Url语法原创 2017-01-11 10:03:46 · 696 阅读 · 0 评论 -
关于PHP获取私有属性(调用阿里云sdk,返回带私有属性的对象)
昨天调用阿里云的滑动验证功能的sdk,官方文档说是返回json数据,但是一打印发现反回的居然是带有私有属性的对象,如图所示HttpResponse Object( [body:HttpResponse:private] => { "RequestId":"A7847F5F-959A-442F-9D4F-D9A823857128","AssumedRoleUser":{"A原创 2017-03-11 13:16:36 · 1365 阅读 · 0 评论 -
yum升级CURL到最新版本的方法,非常好用
首先,先为你的服务器获取最新匹配的源:http://mirror.city-fan.org/ftp/contrib/yum-repo/# 安装新版libcurl的yum源rpm -ivh http://mirror.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel6.noarch.rpm# 升级li原创 2017-03-25 15:47:59 · 3253 阅读 · 0 评论 -
Discuz二次开发 教你识别程序目录和文件列表 - 帮助文档
Discuz! X1比较之前的Discuz!和UCHome做出了大幅度的文件结构变更,现在根据Discuz! X1制作一篇详细的结构说明,也方便新、老站长在安装和使用升级时方便查阅。本列表总览分两个部分, 第一个部分为:目录、文件篇。 第二个部分为:模板文件结构篇。如果大家有不明白的地方可以在后面跟帖。我会酌情解答关于您疑问。由于列表文件太多,我推荐您在查找的时候,原创 2017-09-26 22:23:03 · 485 阅读 · 0 评论 -
Discuz!X数据库函数操作命令大全
函数功能DB::table($tablename)获取正确带前缀的表名,转换数据库句柄DB::delete($tablename, 条件,条数限制)删除表中的数据DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)插入数据操作DB::update原创 2017-09-26 22:18:19 · 180 阅读 · 0 评论