以擴展的形式加入,可以下載php pecl擴展,解壓後,進入到對於目錄,然後PHP-PATH/bin/phpize,然後就是 ./configure --with-php-config=PHP-PATH/bin/php-config 然後make,然後就會生成 so文件,到php擴展目前,再修改php.ini文件
② 怎樣編譯PHP文件
不需要編譯的,把PHP文件拷貝到你的網頁目錄裡面,在地址欄輸入:http://127.0.0.1/*.php就可以了
補充:
大家說得非常明白了,你自己寫的PHP程序,滑鼠雙擊就可以運行,不需要編譯。如果雙擊的時候問你用什麼打開,你就選擇你自己安裝的PHP.EXE文件。
多數情況PHP寫的程序是在網頁上用的,如果你也是寫的網頁程序,那就放在網頁文件夾下,用瀏覽器使用http://127.0.0.1/***.php來打開運行。
反正無需編譯,直接解釋運行。
③ 為什麼 PHP 要編譯那麼多模塊
因為有那麼多功能,不同的功能放在不同的模塊裡面。
④ Mac OS 下如何編譯自己的PHP擴展
為了擴展管理方便,首先來安裝pecl擴展管理器:
cd /usr/lib/php
sudo php install-pear-nozlib.phar
安裝Redis、Memcache、Mongo等擴展。
sudo pecl install redis
sudo pecl install memcache
sudo pecl install mongo
sudo pecl install xdebug
將擴展配置添加的php.ini文件中:
extension=memcache.so
extension=mongo.so
extension=redis.so
zend_extension=xdebug.so
安裝xcache,從官網下載Release-3.2.0解壓縮並安裝
tar xvf xcache-3.2.0.tar
cd xcache-3.2.0
phpize
/configure
make
sudo make install
配置XCache
[xcache]
xcache.size = 128M
xcache.var_size = 8M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.optimizer = Off
由於Mac自帶的PHP環境是不包括mcrypt擴展的,所以需要下載同版本的php源碼包,單獨編譯這個模塊載入。從官網的歸檔裡面找到php5.5.14的源碼包,下載:http://php.net/releases/
tar zxvf php-5.5.14.tar.gz
cd php-5.5.14/ext/mcrypt/
phpize
。/configure
make
sudo make install
配置ext-mcrypt
extension=mcrypt.so
為了加速,還需要打開opcache。
zend_extension=opcache.so
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=0
; Determines if Zend OPCache is enabled for the CLI version of PHP
opcache.enable_cli=0
⑤ 如何在編譯好的PHP環境中安裝PHP擴展模塊
安裝步驟:
1、先進入php解壓縮後的源碼包中,找到要安裝的擴展模塊的目錄。
[root@redhat5 sockets]# cd /home/soft/php-5.2.12/ext/sockets
在sockets目錄下面以絕對路徑運行phpize程序,這時會自動生成sockets的configure程序,在sockets目錄下面可以看到。
[root@redhat5 sockets]# /home/webserver/php5.2.12/bin/phpize
2、進行編譯安裝
[root@redhat5 sockets]# ./configure --with-php-config=/home/webserver/php5.2.12/bin/php-config
[root@redhat5 sockets]#make
[root@redhat5 sockets]#make install
執行完make install屏幕上會提示sockets.so存放的路徑,然後把它復制到php的extensions目錄中,例如我的路徑為 /home/webserver/php5.2.12/lib/php/extensions
3、修改php.ini文件
找到extension_dir = "./" 這行,修改為:
extension_dir = "/home/webserver/php5.2.12/lib/php/extensions/"
然後再新增加一行:
extension=sockets.so
4、重啟apache即可生效。
其它模塊的安裝方法和這個一模一樣,不管是php自帶的擴展模塊還是第三方擴展模塊都照這種方法安裝即可。
⑥ linux已經安裝openssl,如何重新編譯php支持openssl模塊
下載php的源代碼,執行三步安裝就行了:
./configure
make && sudo make install
sudo make clean
就可以了,然後編輯php.ini文件加入模塊支持:
extensions=openssl.so
好了。大工告成~~~
⑦ PHP8、FPM及部分擴展編譯安裝
本著能懶則懶的原則,之前我都是寶塔、lnmp腳本等「一鍵」
再不濟也得來個 apt/yum install php
什麼?源碼 make install ? 編譯參數一言難盡,勸退勸退...我只是想要個開發環境而已
沒關系!我來整理一下常用模塊以及參數!環境為 ubuntu/debian
檢查壓縮包的完整性,與官網 sha256比較
安裝以下包
官方的拓展分類
根據需要的模塊添加其後對應的參數
包含常用模塊,可以直接使用
編譯並安裝後
復制 php.ini 到默認目錄 /usr/local/lib/
檢查 php安裝是否正確
復制 fpm 配置文件、運行服務文件
www.conf php-fpm.conf php-fpm.service
修改 fpm 用戶和組,默認為nobody
修改服務文件,取消只讀 不然日誌不能讀寫無法啟動
設置自啟動並運行
本地起服務測試
No package 'libxml-2.0' found
No package 『sqlite3『 found
configure: WARNING: unrecognized options: –with-gd
No package 'zlib' found
No package 'libpng' found
No package 'oniguruma' found
No package 'libcurl' found
No package 'libsystemd' found
No package 'openssl' found
No package 'libzip' found