早上好冷,真不想接電話啊。可是事情每每就朝你不但願的方向發展,電話裏說:「php7安裝memcache模塊有問題,按網上搜索的好多種方法都不行」,考慮到小朋友要去幹別的活,只好親自上陣。php
根據貼圖,他是卡在memcache編譯那一步.不要點這裏html
php7的memcache擴展已經跟之前不同了,須要用其餘分支,以「php_smart_str_public.h: No such file or directory」爲關鍵字搜索,就能找到解決辦法。我按網上搜索的文章,很快就安裝好了。接着電話告訴小朋友,他又說已經編譯安裝上擴展了,只是"phpinfo();"不顯示memcache擴展加載信息。我看web站點目錄裏邊,有一個test.php,內容爲:web
<?php瀏覽器 phpinfo();php7 ?>運維 |
安裝目錄執行sbin/php-fpm -y etc/php-fpm.conf -t 檢查語法,一切正常。重啓php後,用瀏覽器訪問這個url,確實沒看到memcache。再仔細看看頁面裏邊php.ini文件的路徑,顯示爲/usr/local/php/etc,而安裝生成的那個文件php.ini卻在路徑/usr/local/php/lib下邊。ide
把修改好的php.ini複製一份到目錄/usr/local/php/etc下,重啓php服務;再刷新瀏覽器,memcache出現了。php-fpm
在寫這個文檔之前,羣裏一個兄弟求助,說測試頁面顯示正常,但php日誌裏邊卻有不少告警信息,提示多個擴展模塊不存在。懶得跟他解釋,直接讓遠程qq,進入他的桌面,只幾分鐘,就發現了問題--系統裏安裝了兩個php(一個php5.3,另外一個是php5.6),運行的版本是php5.3,修改的配置文件(php.ini)卻在php5.6的目錄,這小子動做快,很快就把遠程協助給關了。測試
幹運維是個仔細活,要比我還馬虎,確定麻煩事多。url