① ubuntu 16.04 php7.0源裡面安裝的怎麼往裡面添加模塊
ubuntu 16.04 php7.0源裡面安裝的怎麼往裡面添加模塊
pdo擴展模是有蠻多了,如pdo_mysql也是pdo模塊中的一個了,下文我們就以安裝pdo_mysql為示例幫助大家介紹一下安裝步驟吧,其它的pdo擴展模塊安裝步驟也可以一樣。
假設php目錄為/usr/local/php
mysql目錄為/usr/local/mysql
1. 進入PHP源碼包ext/pdo目錄
cd ext/pdo
2. 執行/usr/local/php/bin/phpize[假設PHP的安裝目錄為/usr/local/php]
/usr/local/php/bin/phpize
3. 配置擴展pdo
./configure --with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared
4. 編譯 && 安裝pdo
make && make install
成功則出現
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
Installing header files: /usr/local/php//include/php/
Installing PDO headers: /usr/local/php//include/php/ext/pdo/
說明在/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目錄下生成了pdo.so文件
5. 在PHP源碼包中進入pdo_mysql
cd ext/pdo_mysql
6. /usr/local/php/bin/phpize
/usr/local/php/bin/phpize
7. 配置pdo_mysql[假設Mysql的安裝目錄為/usr/local/mysql]
1./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
8. 編譯 安裝pdo_mysql
make && make install
成功則出現
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
說明的/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目錄下生成了pdo_mysql.so文件
9. 在php配置文件中加上
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so";
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so";
10. 重啟相關服務
/etc/init.d/php-fpm restart
② 如何在PHP7中安裝mysql的擴展
1,去php網站上下載mysql擴展
2,解壓並使用phpize工具初始化,編譯:
#解壓
tar xzvf mysql-45881bd.tar.gz
#進入mysql擴展目錄
cd mysql-45881bd/
#使用phpize初始化,我的phpize在/opt/目錄
/opt/php/bin/phpize
#編譯mysql擴展,使用mysql native driver作為mysql鏈接庫
./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd
make && make install
5,編輯php.ini文件,把mysql.so拷貝到php.ini的extension_dir中,然後在php.ini中加入extension=mysql.so
6,重啟php
③ centos 7.2 系統 php7.0.12的 curl 擴展怎麼開啟
curl是一個廣泛使用的用來上傳和下載的命令行工具,當然嚴格來講,它還可以有別的用途。對於測試來講,它是Web相關測試非常實用的工具,包括debugging,使用起來非常方便。
下面直接進入主題:
1、直接進入到php源碼包中找到原先安裝PHP的源碼包文件①;
2、直接進入/usr/package/php-7.1.10/ext/curl目錄②;
cd /usr/package/php-7.1.10/ext/curl
3、通過phpize工具生成configure文件③;
/usr/local/php/bin/phpize
4、將安裝的軟體進行配置,檢查當前的環境是否滿足要安裝軟體的依賴關系④;
./configure --with-php-config=/usr/local/php/bin/php-config
5、編譯程序並安裝文件;
make &&make install
6、在php的配置文件php.ini最後一行添加extension=curl.so即可。
相關解釋(帶圓圈的數字編號)可參考:https://panxu.net/article/8392.html
④ 如何在PHP7中安裝mysql的擴展
你好,
1.去php網站上下載mysql擴展,
2.解壓並使用phpize工具初始化,編譯:
#解壓
tar xzvf mysql-45881bd.tar.gz
#進入mysql擴展目錄 from
cd mysql-45881bd/
#使用phpize初始化,我的phpize在/opt/目錄
/opt/php/bin/phpize
#編譯mysql擴展,使用mysql native driver作為mysql鏈接庫
./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd
make && make install
3.接下來,我們直接編輯php.ini文件,把mysql.so拷貝到php.ini的extension_dir中,然後在php.ini中加入extension=mysql.so
4.重啟php
成功之後,用phpinfo即可看到mysql擴展的信息
⑤ win10 php7 怎麼弄mysql擴展
非常遺憾的告訴你,php7不支持MySQL擴展了,只有使用mysqli和pdo擴展,PHP.INI中取消下面兩行前面的分號:
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
⑥ PHP7.0怎麼通過打開擴展功能和mysql相連
第一步:進入php源碼中的"ext/mysql"目錄下
第二步:在當前目錄下運行phpize命令:/usr/local/php524/bin/phpize
phpize的規則:去哪個目錄下運行phpize文件,那麼就會在該目錄下生成一個configure文件。
第三步:運行剛才生成的configure文件
命令: ./configure --with-php-config=/usr/local/php524/bin/php-config --with-mysql=/usr/local/mysql/
這里最關鍵的是通過--with-mysql參數告訴mysql客戶端的位置。這樣才能生成mysql.so。
實驗的時候,沒有加這個參數,結果錯誤:
./configure --with-php-config=/usr/local/php524/bin/php-config
第四步:編譯生成.so文件
第五步:配置php引擎載入該擴展。
補充一下:就是去php.ini文件中修改一下配置,載入mysql.so這個擴展(這個擴展文件要放到php指定的擴展目錄下面去)
第六步:測試php引擎是否成功載入該擴展編寫文件phpinfo.php,內容是:<?phpehco phpinfo();?>
運行後,可以看到有如下信息顯示:mysqlMySQLSupport enabledActive PersistentLinks 0
Active Links 0
Client API version 5.1.55
MYSQL_MODULE_TYPE no value
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_INCLUDE no value
MYSQL_LIBS no value
通過這樣的方式可以確認,php引擎已經成功載入了mysql.so擴展。
第七步:已經生成的mysql.so。編寫php代碼測試是否能連接mysql。
⑦ PHP單獨添加擴展 無需重啟伺服器
問題
php自身提供了很多擴展,比如curl,gmp, mbstring等等。我們在編譯安裝php時未必安裝了所有擴展。那麼在安裝完php後,如果想單獨安裝某個php自身的擴展怎麼辦呢?
我們以curl擴展模塊的安裝為例說明如何單獨添加擴展。
步驟
1.進入php源碼的擴展目錄。本例中我的源碼對應目錄如下:
/search/src/php-7.0.14/ext
1
2.進入模塊目錄,我們安裝的是curl擴展,所以進入curl目錄。此時,我們所在的目錄是
/search/src/php-7.0.14/ext/curl
1
3.執行phpize。注意,如果你的機器上有多個php版本,一定要執行你准備安裝擴展的php版本對應的phpize。比如,我的機器上同時有php7和php5.3.3。我當前准備為php7安裝curl擴展。所以執行php7對應的phpize
1 /usr/local/php70/bin/phpize
2
3 結果類似:
4 Configuring for:
5 PHP Api Version: 20151012
6 Zend Mole Api No: 20151012
7 Zend Extension Api No: 320151012
4.執行
./configure --with-php-config=/usr/local/php70/bin/php-config
1
說明:如果你的機器上只有一個php版本,大多時候不需要特別使用–with-php-config指明相應的php-config所在位置。
5.執行make,之後會在./moles/目錄下生成curl.so文件
6.執行make install
結果類似:
Installing shared extensions: /usr/local/php70/lib/php/20151012/
1
2
執行結果告訴你將curl.so安裝到了哪個目錄。
一般情況,如果你正確的指定了php-config或者你的機器只有一個php版本,so都會被正確安裝到相應php的extension_dir。如果執行make install後,extension_dir目錄下沒有相應的so,可以手動將第5步中生成的so文件cp過去。
要查看具體extension_dir,可以執行如下命令。
php -i| grep extension_dir
結果類似
extension_dir => /usr/local/php70/lib/php/20151012/ => /usr/local/php70/lib/php/20151012/
1
2
3
7.在php.ini中增加
extension=curl.so
1
如果不知道php.ini的具體位置,可以通過如下命令查看
php --ini
1
8.執行如下命令,查看是否安裝成功
php -m | grep curl
1
如果你看到了curl, 恭喜你,安裝成功!
⑧ php7無法安裝memcache擴展 系統 centos-6.8 Nginx-1.10.2 PHP-7.0.13/5.6.28 memcached-1.4
一 下載需要的源碼包
所有安裝包均選用最新的。
1. 下載libevent2.0.22
點擊紅色部分下載
下載memcached1.4.24
點擊紅色部分,下載最新版本
下載php擴展memcache3.0.8
選擇需要的版本
二 安裝詳細步驟
首先將以上三個軟體包下載到/tmp目錄下
1. 安裝libevent
cd /tmp #首先進入到該下載包的目錄
tar zxvf libevent-2.0.22-stable.tar.gz #解壓包cd libevent-2.0.22-stable #進入到解壓的目錄./configure --prefix=/usr/local #編譯前配置,生成Makefile文件,路徑可自行更改make; make install #編譯+安裝
1
測試是否安裝成功
看到這些信息,表示成功啦
2. 安裝memcached
cd /tmp #首先進入到該下載包的目錄
tar zxvf memcached-1.4.24.tar.gz #解壓包
cd memcached-1.4.24 #進入到解壓的目錄
./configure –with-libevent=/usr/local #編譯前配置,生成Makefile文件,路徑必須與libevent中一致make; make install #編譯+安裝
1
測試是否安裝成功
表示成功的信息
通過以上操作,就完成了memcached伺服器的安裝。特別的簡單吧!現在就來搞一搞memcache的php擴展安裝吧3. 安裝擴展
cd /tmp #首先進入到該下載包的目錄
tar zxvf memcache-3.0.8.tgz #解壓包
cd memcache-3.0.8 #進入到解壓的目錄
/opt/lampp/bin/phpize #動態為php添加擴展。phpize路徑可能不一致,請根據自己的實際情況./configure –enable-memcache –with-php-config=/opt/lampp/bin/php-config –with-zlib-dir #php-config請根據自己環境情況填寫make; make install #編譯+安裝
1
完成以上步驟時,心情愉悅的點擊了enter,准備喝口水瀟灑一下,結果出現了一下錯誤(這也是我寫這篇博客的原因,要不都懶得記錄了)錯誤信息
看了下代碼錯誤信息,說是zlib.h找不到。找不到就給他安一個嘛。真是的安裝zlib
下載zlib-1.2.8.tar.gz
下載地址:http://www.zlib.net/
如圖:
紅色部分點擊
cd /tmp #首先進入到該下載包的目錄
tar zxvf zlib-1.2.8.tar.gz #解壓包
cd zlib-1.2.8 #進入到解壓的目錄
./configure --prefix=/usr/local/zlib
make; make install #編譯+安裝
1
再進行配置一下系統的文件,載入剛才編譯安裝的zlib生成的庫文件vi /etc/ld.so.conf.d/zlib.conf
加入如下內容後保存退出: /usr/local/zlib/lib也就是添加安裝目錄的文件路徑,庫文件。ldconfig 運行之後就會載入安裝的庫文件了。
OK,到這一步了,此時,重新在memcache的php擴展中執行make;make install命令如果看到以下信息,表示成功:
擴展安裝成功
三 配置php.ini文件
首先通過phpinfo函數,找到php.ini的路徑,我的是:/opt/lampp/etc/php.ini在其中添加如下內容:
修改extension_dir路徑:
extension_dir = 「/opt/lampp/lib/php/extensions/no-debug-non-zts-20121212/」
extension=memcache.so
[Memcache]
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192
然後重新啟動apache,再次通過phpinfo查看一下情況。如果有如下內容,表示配置成功:
信息
四 配置memcached伺服器
啟動memcached伺服器
memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid參數說明:
-d選項是啟動一個守護進程,
-m是分配給Memcache使用的內存數量,單位是MB,我這里是10MB,-u是運行Memcache的用戶,我這里是root,
-l是監聽的伺服器IP地址,如果有多個地址的話,我這里指定了伺服器的IP地址127.0.0.1,-p是設置Memcache監聽的埠,我這里設置了11211,最好是1024以上的埠,-c選項是最大運行的並發連接數,默認是1024,我這里設置了256,按照你伺服器的負載量來設定,-P是設置保存Memcache的pid文件,我這里是保存在 /tmp/memcached.pid2. 結束memcached進行
kill cat /tmp/memcached.pid
3. 檢查memcached是否已經啟動
看到綠色框中內容,就表示完成
五 測試php的memcache擴展
<?php
$mem = new Memcache;
$mem->connect("192.168.12.201", 13001);
$mem->set('key','This is a test!', 0, 60);$val = $mem->get('key');
echo $val;
?>
寫在後面:大家有興趣可以將session改為使用memcache來保存。php自身使用文件的方式,不太好,動不動文件大小總和就上G了。
⑨ php7 怎麼安裝mcrypt模塊
進入php源程序目錄中的ext目錄中,這里存放著各個擴展模塊的源代碼,選擇你需要的模塊,比如curl模塊:cd curl
執行phpize生成編譯文件,phpize在PHP安裝目錄的bin目錄下
/usr/local/php5/bin/phpize
運行時,可能會報錯:Cannot find autoconf. Please check your autoconf installation and
the $PHP_AUTOCONF
environment variable is set correctly and then rerun this
script.,需要安裝autoconf:
yum install autoconf(RedHat或者CentOS)、apt-get install
autoconf(Ubuntu linux)
/usr/local/php5/bin/php -v
執行這個命令時,php會去檢查配置文件是否正確,如果有配置錯誤,
這里會報錯,可以根據錯誤信息去排查!你看過後很簡單吧以後不會可以向我一樣經常到後盾人平台找找相關教材看看就會了,希望能幫到你,給個採納吧謝謝_(•̀ω•́ 」∠)_
⑩ PHP7安裝intl擴展和linux安裝icu
一 PHP intl 是國際化擴展,是ICU 庫的一個包裝器。所以在安裝PHP intl擴展前要先安裝ICU庫,安裝ICU庫的具體步驟::
二 安裝intl擴展
1:進入php7.2.5源碼:
2:運行:phpize ,找不到命令時,將路徑補全:/usr/local/php7/bin/phpize(是php的安裝路徑),出現如下:
Configuring for:
PHP Api Version: 20100412
Zend Mole Api No: 20100525
Zend Extension Api No: 220100525
3:運行配置
./configure --enable-intl --with-icu-dir=/usr/local/icu/ --with-php-config=/usr/local/php7/bin/php-config
注:前面路徑為icu的安裝路徑,後面路徑為php的安裝路徑。
4:編譯擴展:make
5:復制擴展到目標文件夾
cp /user/local/php/php7.2.5/ext/intl/moles/intl.so /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718
注意:也可以find / -name intl.so 查找。
6:設置擴展加入配置文件中:
[intl]
extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/"
extension=intl.so
大坑:::採用phpinfo()時,無法找到配置的intl擴展,說明配置沒有生效。。。。。。
原因:在編譯php時沒有 --with-config-file-path=PATH 指定php.ini路徑,默認的路徑為/usr/local/php7/lib,只需要將php.ini放入這個默認的路徑即可。你也可以安裝配置php時加入,如下:
./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
訪問:index.php中phpinfo()文件。