1、 php.ini(/your/php.ini)的配置中这两项
cgi.fix_pathinfo=1
doc_root=
2、nginx配置文件/etc/nginx/sites-available/default中注意以下部分
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /youpath$fastcgi_script_name;
include fastcgi_params;
}
路径需要根据你主机主目录的实际情况填写

配置完以上部分,重启一下service nginx restart,应该没问题了

正常情况下  用df -hl 可以查询看看各个挂载的磁盘情况

如果根目录磁盘100% 我们可以到/下查看一下

cd /

du -sh *

可以统计一下那个目录占用比较大,然后响应的cd 大目录下的 做一下 rm -rf  *

但是有一种情况是通过du统计得出文件不足以满磁盘   因此成为根目录无故100%

这个时候可能是内存满了 一般是某个程序出问题了,你可以检查一下现有的程序进程问题

我发现我的PHP有两个版本 正常的是php5.5

后来安装了一个php5.6 但是没有跑程序,只是启动了

那我把php5.6 stop一下就ok了

系统有个php5.5.14 现在需要再安装个php5.6.31

1.php.net 下载php5.6.31并安装

tar zxvf php-5.6.31.tar.gz

cd php-5.6.31

./configure –prefix=/usr/local/php56 –with-config-file-path=/usr/local/php56/etc –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-mysql=mysqlnd –with-mysqli=mysqlnd –with-pdo-mysql=mysqlnd –with-iconv-dir –with-freetype-dir=/usr/local/freetype –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –enable-mbregex –enable-mbstring –with-mcrypt –enable-ftp –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-xmlrpc –enable-zip –enable-soap –with-gettext –disable-fileinfo –enable-opcache –enable-intl –with-xsl

遇到一些错误 参考http://www.bkjia.com/PHPjc/1008013.html

configure: error: Unable to detect ICU prefix or no failed. Please verify ICU install prefix and make sure icu-config works.

安装 libicu-devel

yum -y install libicu-devel

configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

安装 libxslt-devel
yum -y install libxslt-devel

注意一下make
make ZEND_EXTRA_LIBS=’-liconv’

make install

2
拷贝配置文件
cp -R ./sapi/fpm/php-fpm.conf /usr/local/php56/etc/php-fpm.conf
cp php.ini-development /usr/local/php56/etc/php.ini
cp /etc/init.d/php-fpm /etc/init.d/php-fpm56
php-fpm56修改一下PHP的目录就可以了

4.配置php-fpm 修改php-fpm.conf的侦听端口为9001,因为主版本5.5.14是侦听9000。 killall php-fpm56

/usr/local/php56/etc/php-fpm.conf

listen = 127.0.0.1:9001

配置PHP.ini

# php extensions
echo “Modify php.ini……”
sed -i ‘s/post_max_size =.*/post_max_size = 50M/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/upload_max_filesize =.*/upload_max_filesize = 50M/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/;date.timezone =.*/date.timezone = PRC/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/short_open_tag =.*/short_open_tag = On/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/;cgi.fix_pathinfo=.*/cgi.fix_pathinfo=0/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/max_execution_time =.*/max_execution_time = 300/g’ /usr/local/php56/etc/php.ini
sed -i ‘s/disable_functions =.*/disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server/g’ /usr/local/php56/etc/php.ini

echo “Creating new php-fpm configure file…”
cat >/usr/local/php56/etc/php-fpm.conf<<EOF
[global]
pid = /usr/local/php56/var/run/php-fpm.pid
error_log = /usr/local/php56/var/log/php-fpm.log
log_level = notice

[www]
listen = /tmp/php56-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 10
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 6
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = var/log/php56slow.log
EOF

fastcgi_pass 127.0.0.1:9001;
下面备注一下需要装一些库

extension=yaf.so
extension=memcache.so
extension=memcached.so
extension=redis.so
extension=bz2.so

下面是个文件,请下载查看

安装多版本php

今天PHP对接的招商银行接口出问题了,查了半天是由于PHP-java-bridge宕机了  贴一下启动代码

Linux下的启动代码 如果写日志  需要在8080后面写上 3 log.log

nohup java -jar JavaBridge.jar HTTP_LOCAL:8080 >/dev/null 2>&1 &

然后查看进程
ps aux | grep “JavaBridge”

微信有2个ACCESS_TOKEN,

1,基础接口的token 获取接口是

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
2,用户网页授权access_token 获取接口地址是

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

网页授权access_token 需要通过code去获取

code是怎么来的,是通过调用下面接口来获取的

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

注意这个接口中有个参数scope 默认有2个值snsapi_base和snsapi_userinfo,这个接口会根据scope 来生成不同的code并且获取不同作用的access_token ,不管scope传什么值都能在得到对应access_token的同时得到open_id, 如果你只需要得到opend_id 那使用snsapi_base参数到此结束了,如果需要获取用户的其他信息比如 昵称 地址 就要snsapi_userinfo 会弹出授权

3 怎么获取用户信息那就调用下面接口

https://api.weixin.qq.com/sns/userinfo?access_token={0}&openid={1}&lang=zh_CN

很明显这个接口中的access_token是第二步获取code的时候scope 参数传snsapi_userinfo来换取的access_token

4 微信还有一个获取用户基本信息的接口 但是 这个接口需要你关注了公众号

https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN (此接口的access_token 是接口基础调用access_token 不是网页授权access_token)

微信的解释:是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。