準備工作
php 官網位址 :
mysql 官網位址 :
php 安裝
先安裝一些通常來說應該已經有的元件,以防沒有可以檢查並安裝一下
yum -y install gcc automake autoconf libtool make gcc-c++ glibc
安裝依賴庫
yum -y install libmcrypt-devel mhash-devel libxslt-devel \
libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel \
zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel \
ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel \
krb5 krb5-devel libidn libidn-devel openssl openssl-devel
若有錯誤yum [errno 256] no more mirrors to try 解決方法
輸入下面的命令即可解決問題:
yum clean all
解壓tar vxf mirror
,會解壓為php-7.2.16
檔案;
進入檔案安裝cd php-7.2.16
執行:
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php \
--enable-sockets \
--enable-fpm \
--enable-mbstring \
--enable-pcntl \
--enable-soap \
--enable-opcache \
--disable-fileinfo \
--with-openssl \
--with-curl \
--with-mhash \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--enable-zip \
--with-zlib \
--enable-******xml \
--with-libxml-dir \
--disable-debug \
--enable-inline-optimization \
--with-bz2 \
--enable-sysvsem \
--enable-sysvshm \
--enable-mbregex \
--with-pcre-regex \
--with-mysqli \
--with-pdo-mysql
--prefix=/usr/local/php7 # 配置安裝目錄
--with-config-file-path=/usr/local/php7 # 配置檔案 php.ini 的路徑
--enable-sockets # 開啟 socket
--enable-fpm # 啟用 fpm 擴充套件
--enable-cli # 啟用 命令列模式 (從 php 4.3.0 之後這個模組預設開啟所以可以不用再加此命令)
--enable-mbstring # 啟用 mbstring 庫
--enable-pcntl # 啟用 pcntl (僅 cli / cgi)
--enable-soap # 啟用 soap
--enable-opcache # 開啟 opcache 快取
--disable-fileinfo # 禁用 fileinfo (由於 5.3+ 之後已經不再持續維護了,但預設是開啟的,所以還是禁止了吧)(1g以下記憶體伺服器直接關了吧)
--disable-rpath #禁用在搜尋路徑中傳遞其他執行庫。
--with-mysqli # 啟用 mysqli 擴充套件
--with-pdo-mysql # 啟用 pdo 擴充套件
--with-iconv-dir # 啟用 xmlrpc-epi 字元編碼轉換 擴充套件
--with-openssl # 啟用 openssl 擴充套件 (需要 openssl openssl-devel)
--with-fpm-user=www #設定 fpm 所屬的使用者
--with-fpm-group=www #設定 fpm 所屬的組別
--with-curl # 啟用 curl 擴充套件
--with-mhash # 開啟 mhash 基於離散數學原理的不可逆向的php加密方式擴充套件庫
# gd
--with-gd # 啟用 gd 操作 擴充套件
--with-jpeg-dir # 開啟對 jpeg 的支援 (需要 libjpeg)
--with-png-dir # 開啟對 png 支援 (需要 libpng)
--with-freetype-dir # 開啟 freetype
# 壓縮
--enable-zip # 啟用 zip
--with-zlib # 啟用對 zlib 支援
# xml
--enable-******xml # 啟用對 ******xml 支援
--with-libxml-dir # 啟用對 libxml2 支援
如果出現報錯 先刪除(那個擴充套件報錯刪除那個),後續在裝擴充套件;
錯誤 :cc: internal error: killed (program cc1)
記憶體不足,臨時使用交換分割槽來解決吧
free -m
sudo dd if=/dev/zero of=/swapfile bs=64m count=16
sudo mkswap /swapfile
sudo swapon /swapfile
#編譯完成,可以取消交換分割槽
sudo swapoff /swapfile
sudo rm /swapfile
free -m
7.3 錯誤:configure: error: off_t undefined;checkyour library configuration
vim /etc/ld.so.conf
#新增如下幾行
/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64
#儲存退出
:wqldconfig -v # 使之生效
執行安裝make && make install
;
配置php-fpm
7.1 從解壓檔案中複製php.ini配置檔案
cd /dowload/php-7.3.9
cp php.ini-production /usr/local/php/php.ini
7.2 從解壓檔案中複製啟動指令碼
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
7.3 修改配置檔案
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf # 去掉pid = run/php-fpm.pid前面的分號。:wq! 儲存並退出。
cd php-fpm.d
cp www.conf.default www.conf
建立 使用者 和 組
groupadd www
useradd www
/etc/init.d/php-fpm start #php-fpm啟動命令
/etc/init.d/php-fpm stop #php-fpm停止命令
/etc/init.d/php-fpm restart #php-fpm重啟命令
ps -ef | grep php #檢視是否已經成功啟動php
測試/usr/local/php/bin/php phpinfo.php
輸出php相關就ok
演示站 : 賬號:demo 密碼:crmeb.com
LNMP環境搭建篇 PHP7 2編譯安裝
此前對公司下屬的本地化專案執行環境進行了部署,整體更新迭代到最新的穩定版,此處就整體以乙個小系列進行分析整理。各元件的版本如下 centos 7.4 nginx 1.14.0 mysql 8.0.11 php 7.2.8 新建儲存目錄 存放專案執行目錄 mkdir p data wwwroot 存放...
lnmp環境搭建 php部分
解壓包tar xzvf php 5.4 3.tar gz cd php 5.4 3 編譯安裝 configure prefix usr local php54 with config file path usr local php54 etc enable inline optimization d...
搭建本地LNMP開發環境(4) 安裝PHP
php同樣即可以編譯原始碼安裝,又可以使用包管理工具安裝,這裡使用後者。debian官方源提供的php版本可能會比較老,如果希望使用比較新的php版本,可以通過修改apt源的方式解決。開始執行wheezy 連線到debian 輸入php v 可以看到還沒有安裝php 這裡使用比較新的php版本,由d...