第四十三天:php的相关问题-创新互联

小Q:人类的全部历史都告诫有智慧的人,不要笃信时运,而应坚信思想。  — 爱献生

江山ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

开启php的错误日志记录------------------------------------------

默认,php报错是不记录进日志文件,而是直接从屏幕上显示,这很不便于排查问题。打开php的错误日志记录也很简单。

编辑php.ini

log_errors = On

error_log = /usr/local/php/log/error.log

php.ini 中开启短标签-------------------------------------------

控制参数: short_open_tag = On

如果设置为Off,则不能正常解析类似于这样形式的php文件:

而只能解析 这样形式的php文件

所以要想php支持短标签,需要我们把short_open_tag  设置为On.

open_basedir限定php解析目录-------------------------------------

在php.ini中有一个参数  open_basedir ,默认是关闭的。如果你的服务器网站只针对某个目录去解析php那么就可以去设定这个参数了。

open_basedir = /var/www/htdocs

另外在apache的配置文件中也可以限定只有某个目录可以解析php

php_admin_value open_basedir "/var/www/htdocs"

可以和php.ini中的 open_basedir 起到一样的效果。

memcached 内存溢出----------------------------------------------

近几天,发现一个问题。网站的应用中,出现的这样的情况:一个帖子,第一次打开正常,但刷新几次后就找不到主题,只看到回复。偶尔还会出现,“未定义操作”的错误。经检测,发现是memcached的问题,我们怀疑是memcached刷新缓存过于频繁造成。几台服务器比较,唯有php版本与memcached版本不一样。

正常服务器 php 5.2.8  memcached 1.2.4 

不正常服务器 php 5.2.11 memcached 1.2.8

首先我升级了memcached版本,升级成  1.4.0 ,可结果问题依旧。所以只好降低php版本,降低为 5.2.8 ,但memcached版本还是1.4.0. 问题此时解决。

得出结论:php-5.2.11 对memcached 支持不好。不知道更高版本的php是否会解决该问题。

memcache和memcached在php中的应用--------------------------------

memcache在php中编译

#  wget http://www.lishiming.net/data/p_w_upload/forum/memcache-2.2.3.tgz # tar zxvf memcache-2.2.3.tgz # cd memcache-2.2.3 # /usr/local/php/bin/phpize # ./configure --with-php-config=/usr/local/php/bin/php-config # make # make install # cp modules/memcache.so /usr/local/php/ext/   //把memcache.so 拷贝至php的extension_dir下,

#查看php extension_dir的方法是  /usr/local/php/bin/php -i |grep extension_dir 

修改扩展路径,在php.ini中修改:

extension_dir = "/usr/local/php/ext"

然后在php.ini 中添加

extension = memcache.so

保存后可以利用 /usr/local/php/bin/php -m  检测和查看具体的参数

memcached 的编译安装

wget http://syslab.comsenz.com/downloads/linux/memcached-1.4.5.tar.gz tar zxvf memcached-1.2.8.tar.gz cd  memcached-1.2.8 ./configure --prefix=/usr/local/memcached make && make install

启动:

/usr/local/memcached/bin/memcached -m 2048 -p 11211 -l 127.0.0.1 -d -u www

-m  后边指定memecached使用多少内存,单位是M

-p  指定memcached 启动端口

-l  指定绑定的IP

-u  指定以某个账户的身份启动

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前题目:第四十三天:php的相关问题-创新互联
文章URL:http://myzitong.com/article/dophgj.html