PHP libcurl 升级

今天解决一个微信退款 “certificate not match” 的问题。这个错误是说:微信证书错误。开始以为是证书路径问题,经过排查发现并非路径问题,而是libcurl 版本的问题,可能是微信服务器升级了libcurl吧,他们要求libcurl 必须使用 7.20以上版本。所以只能升级服务器…..

下面说一下我的步骤吧:

首先下载安装包:https://curl.haxx.se/download/curl-7.50.3.tar.gz

— 解压到当前目录
# tar -zxf curl-7.50.3.tar.gz
— 进入解压后的目录内
# cd curl-7.50.3
— 配置(如之前安装有指定目录这里也请指定到原来安装的目录,这里是默认安装)
# ./configure
— 编译
# make
— 安装
# make install
— 安装完毕

然后重启PHP即可

ubuntu 下无线网卡被禁用问题解决

首先说明一下我的电脑是华硕F450J小本。之前电脑一直使用win8.1系统。可是后来有一天想要使用Linux。于是开始试用各种发行版本的Linux,结果装完之后发现一个问题那就是我的无线网卡用不了….

当时表示真的是很无语啊,为什么我用windows的时候无线没有问题,换了Linux就不行了呢???神码度娘,google全查了,最后发现这是一个华硕电脑的通病。只需要执行一个短短的命令然后重启电脑就搞定了…..

这是什么狗血的东西啊…..

不费话了,代码直接干上来。大家自己看吧…

ceho “options asus_nb_wmi wapf=4” | sudo tee /etc/modprobe.d/asus_nb_wmi.conf

CentOS 下 LNMP 环境搭建

今天写一篇关于CentOS 下配置 LNMP 环境的文章。首先我们了解一下什么事LNMP,L表示Linux系统,也就是机器的操作系统;N表示web服务器的一种Nginx;  M这个就简单了表示MySQL,这个做PHP的人应该都知道; 剩下的P 这个毫无疑问就是PHP。名词解释这个其实能看到这篇文章的人本都不用解释,但是为了一些想要了解的人,我还是写了。接着要做的就是LNMP环境的搭建了。不多说直接开始。

首先,我们拿到一台装有CentOS系统的机器,首先需要查看一下机器的配置。

1. 查看硬盘信息   `df -h` 通过这个命令我们可以获取到当前机器已挂载的硬盘信息。

2. 查看系统版本 `uname -a` ,`cat /etc/issue` 这两个命令就可以当前使用系统的版本。

3. 查看当前机器的CPU信息  `cat /proc/cpuinfo` 通过这个命令查看CPU信息。

4. 查看当前机器内存大小  `free -g` 通过这个命令查看内存大小。

接着,更新安装一些必要的扩展依赖。查看完上面的信息我们知道了现在所使用的机器的一些信息之后我们就可以开始安装我们的服务器环境了。

1. 安装必要的扩展依赖

yum安装扩展
wget patch make cmake gcc gcc-c++ gcc-g77 flex bison file libtool libtool-libs autoconf kernel-devel libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2 bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel vim-minimal nano fonts-chinese gettext gettext-devel gmp-devel pspell-devel unzip libcap autoconf

继续阅读CentOS 下 LNMP 环境搭建

Nginx负载均衡配置实例详解

负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦。

负载均衡

先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上即可。

测试环境
由于没有服务器,所以本次测试直接host指定域名,然后在VMware里安装了三台CentOS。

测试域名  :a.com

A服务器IP :192.168.5.149 (主)

B服务器IP :192.168.5.27

C服务器IP :192.168.5.126

部署思路
A服务器做为主服务器,域名直接解析到A服务器(192.168.5.149)上,由A服务器负载均衡到B服务器(192.168.5.27)与C服务器(192.168.5.126)上。

继续阅读Nginx负载均衡配置实例详解

CentOS 6.5下Git服务器搭建

1 关于版本控制


版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。有以下三种版本控制系统:


1. 本地版本控制系统

许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。这么做唯一的好处就是简单。不过坏处也不少:有时候会混淆所在的工作目录,一旦弄错文件丢了数据就没法撤销恢复。

为了解决这个问题,人们很久以前就开发了许多种本地版本控制系统,大多都是采用某种简单的数据库来记录文件的历次更新差异。图示如下,

wKioL1NHz9KwrLVKAAB_hYDNW_c407.jpg

继续阅读CentOS 6.5下Git服务器搭建

Nginx配置文件nginx.conf中文详解(总结)

今天下午花了点时间,结合自己的使用经验,把Nginx的主要配置参数说明分享一下,也参考了一些网络的内容,这篇是目前最完整的Nginx配置参数中文说明了。更详细的模块参数请参考:http://wiki.nginx.org/Main

#定义Nginx运行的用户和用户组
user www www;
#nginx进程数,建议设置为等于CPU总核心数。
worker_processes 8;
#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]
error_log ar/loginx/error.log info;
#进程文件
pid ar/runinx.pid;
#一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(系统的值ulimit -n)与nginx进程数相除,但是nginx分配请求并不均匀,所以建议与ulimit -n的值保持一致。
worker_rlimit_nofile 65535;
#工作模式与连接数上限
events
{
#参考事件模型,use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; epoll模型是Linux 2.6以上版本内核中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型。
use epoll;
#单个进程最大连接数(最大连接数=连接数*进程数)
worker_connections 65535;
}

继续阅读Nginx配置文件nginx.conf中文详解(总结)

Linux下PHP扩展编译安装

在我们实际开发中,经常会出现需要使用一些新的扩展。但是之前的扩展是我们在安装PHP的时候就已经把他们编译进php一块儿安装好了,那么这些扩展我们是不是还要重新编译,然后重编php安装呢?!其实大家都知道答案是不用,但是我们怎么把这些扩展编进php去呢?!其实很简单了,废话不多说了,进正题。

首先下载要安装的扩展包。

接着解压扩展安装包。

继续阅读Linux下PHP扩展编译安装