phpredisadmin common.inc.php,phpRedisAdmin安装
##使用場景,不需要給研發開機器的權限,而研發又能操作redis庫!
wget?--no-check-certificate
tar?zxvf?phpredis.tar.gz
cd?owlient-phpredis-90ecd17/
/usr/local/webserver/php/bin/phpize
./configure???--with-php-config=/usr/local/webserver/php/bin/php-config
make
make?test
make??install
cd?/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20100525/
查看是否多出一個redis.so文件!
修改php.ini文件,將該redis.so給加進去
通過php?-m命令來查看是否已經有redis模塊,如下:
開始我試著下載,解壓后,直接作為一個php的項目來運行,結果發現運行報錯:
PHP?message:?PHP?Fatal?error:??require():?Failed?opening?required?'/data/redisadmin/includes/../vendor/autoload.php'?(include_path='.:')?in?/data/redisadmin/includes/common.inc.php?on?line?2"
顯然缺少文件,于是想著去看文檔,文檔中的方法如下:
git?clone
cd?phpRedisAdmin
git?clone
發現使用上述的方法是有vendor目錄的!
然后將該文件夾復制到/var/www/html目錄下,然后在includes目錄下復制config.sample.inc.php為config.inc.php,然后修改
$config?=?array(
'servers'?=>?array(
array(
'name'???=>?'10.10.11.32?server',?//?Optional?name.
'host'???=>?'10.10.11.32',??##需要修改
'port'???=>?6379,?????????##需要修改
'filter'?=>?'*',
在此根據后臺日志的報錯解決了兩個問題:
1:?PHP?Fatal?error:??Allowed?memory?size?of?268435456?bytes?exhausted?(tried?to?allocate?71?bytes)?in?/var/www/html/index.php?on?line?17
這個修改下php.ini中的內存分配就可以了
2:?[Fri?Apr?17?15:42:34?2015]?[error]?[client?222.92.145.181]?PHP?Warning:??Unknown:?failed?to?open?stream:?Permission?denied?in?Unknown?on?line?0
[Fri?Apr?17?15:42:34?2015]?[error]?[client?222.92.145.181]?PHP?Fatal?error:??Unknown:?Failed?opening?required?'/var/www/html/index.php'?(include_path='.:/usr/share/pear:/usr/share/php')?in?Unknown?on?line?0
這個是selinux的問題,關閉selinux就可以了
3:?PHP?Fatal?error:??Call?to?undefined?function?mb_internal_encoding()?in?/var/www/html/includes/common.inc.php?on?line?59
解決方法:yum?-y?install?php-mbstring然后重相關服務即可
上面遇到的問題都解決了,接下來更加郁悶的是是后臺不報錯,web頁面一直在那里轉,最后在日志里面有輸出:
PHP?Fatal?error:?Maximum?execution?time?of?30?seconds?exceeded?in?/var/www/html/index.php?on?line?17
后來我想到一個測試方法:
[root@localhost?liuxiaojie]#?cat?a.php
$redis?=?new?Redis();
$redis->connect('10.10.11.30',6389);
$redis->set('test','hello?world! How are?you');
echo?$redis->get('test');
?>
結果顯示是正常的!
實在想不到解決方法了,很是郁悶,后來無意發現了使用localhost,頁面一下就顯示出來了,盡管我機器上沒有redis,后來哥們給我另外一個redis實例,我在config.inc.php簡單修改一下,立刻就顯示出來了!
于是猜到是該redis實例的問題,但有陷入了深思,機器的防火墻正常,redis實例通過測試程序能訪問,為什么通過卻訪問失敗,后來終于想通了,原來是顯示的時候會把data0庫里面所有key都給加載出來,該redis實例的keys值太多(大概有幾千萬),無法一下子加載出來!所以頁面就一直在那里轉!
##如果一個db中有太多的key(例如:上千萬),使用這個工具的時候有問題,頁面加載的時間比較久,超時(超過php.ini中設置)
總結
以上是生活随笔為你收集整理的phpredisadmin common.inc.php,phpRedisAdmin安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我的世界三层别墅种子
- 下一篇: EA画UML图中什么是泛化