1. 程式人生 > >php啟用sockets擴充套件解決phpmailer傳送郵件慢

php啟用sockets擴充套件解決phpmailer傳送郵件慢

在thinkphp中引入第三方庫phpmailer用於傳送郵件,結果發現非常慢,需要幾十秒,在網上找到需要php開啟sockets擴充套件庫。使用php -m檢視,有sockets,但是沒有找到sockets.so,於是按照以下步驟新增sockets擴充套件庫。

1. cd /home/sjdb/packages/lnmp1.1-full/php-5.3.28/ext/sockets  (我用的是lnmp一鍵安裝包)

2. /usr/local/php/bin/phpize

3. ./configure --with-php-config=/usr/local/php/bin/php-config

4. make

5. make install

6. 顯示so檔案路徑在/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/中

7. 設定/usr/local/php/etc/php.ini中的extension_dir=“/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/”,extension=sockets.so

8. 重啟php-fpm (service php-fpm restart) 提示錯誤:

PHP Warning: PHP Startup: Invalid library (maybe not a PHP library)
'sockets.so' in Unknown on line 0


 9. 看到國外網站上有人make clean之後再重新新增就可以了,我試了還是不行

10. 然後再看到我之前新增的擴充套件庫都在/usr/lib64/php/modules這個目錄下,於是把/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/sockets.so拷貝到/usr/lib64/php/modules,同時取消掉剛才對php.ini中extension_dir和extension的設定。

11 重啟php-fpm和nginx,再發送郵件,一點也不慢了。問題解決了。