介紹:
久聞php7的速度以及性能那可是比php5系列的任何一版本都要快,具體性能有多好,建議還是先嘗試下再說。如果你是升級或新安裝,那你首先需要考慮php7和程序是否存在兼容性,如果程序是基于php5開發的,那么就需要考慮php7是否適合你當前的生產環境,今天我就實操并安裝用于生產中。
先安裝php依賴包,否則在編譯安裝php7的過程當中會出現各種報錯,安裝完成后即可進入下一個環節。
安裝擴展包并更新系統內核:
$ yum install epel-release -y$ yum update
安裝php依賴組件(包含Nginx依賴):
創建用戶和組,并下載php安裝包解壓:
$ cd /tmp$ groupadd www$ useradd -g www www$ wget http://am1.php.net/distributions/php-7.2.1.tar.gz$ tar xvf php-7.2.1.tar.gz$ cd php-7.2.1
設置變量并開始源碼編譯:
$ cp -frp /usr/lib64/libldap* /usr/lib/$ ./configure --prefix=/usr/local/php /--with-config-file-path=/usr/local/php/etc /--enable-fpm /--with-fpm-user=www /--with-fpm-group=www /--enable-mysqlnd /--with-mysqli=mysqlnd /--with-pdo-mysql=mysqlnd /--enable-mysqlnd-compression-support /--with-iconv-dir /--with-freetype-dir /--with-jpeg-dir /--with-png-dir /--with-zlib /--with-libxml-dir /--enable-xml /--disable-rpath /--enable-bcmath /--enable-shmop /--enable-sysvsem /--enable-inline-optimization /--with-curl /--enable-mbregex /--enable-mbstring /--enable-intl /--with-mcrypt /--with-libmbfl /--enable-ftp /--with-gd /--enable-gd-jis-conv /--enable-gd-native-ttf /--with-openssl /--with-mhash /--enable-pcntl /--enable-sockets /--with-xmlrpc /--enable-zip /--enable-soap /--with-gettext /--disable-fileinfo /--enable-opcache /--with-pear /--enable-maintainer-zts /--with-ldap=shared /--without-gdbm /
若無報錯執行下一步安裝,如果編譯過程中出現錯誤,根據報錯安裝依賴包,通常不會出現這種問題。
注意:–enable-gd-jis-conv 此參數會導致Zabbix中文字符亂碼,建議取消。
開始安裝:
$ make -j 4 && make install
完成安裝后配置php.ini文件:
$ cp php.ini-development /usr/local/php/etc/php.ini$ cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf$ cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
修改 php.ini 相關參數:
$ vim /usr/local/php/etc/php.iniexpose_php = Offshort_open_tag = ONmax_execution_time = 300max_input_time = 300memory_limit = 128Mpost_max_size = 32Mdate.timezone = Asia/Shanghaimbstring.func_overload=2extension = "/usr/local/php/lib/php/extensions/no-debug-zts-20160303/ldap.so"
設置 OPcache 緩存:
[opcache]zend_extension=/usr/local/php/lib/php/extensions/no-debug-zts-20160303/opcache.soopcache.memory_consumption=128opcache.interned_strings_buffer=8opcache.max_accelerated_files=4000opcache.revalidate_freq=60opcache.fast_shutdown=1opcache.enable_cli=1
設置php安全函數:
$ vim /usr/local/php/etc/php.ini
默認值:
disable_functions =
修改為:
或通配:
配置www.conf
取消以下注釋并修改優化其參數:
listen = /var/run/www/php-cgi.socklisten.owner = wwwlisten.group = wwwlisten.mode = 0660listen.allowed_clients = 127.0.0.1pm = dynamiclisten.backlog = -1pm.max_children = 180pm.start_servers = 50pm.min_spare_servers = 50pm.max_spare_servers = 180request_terminate_timeout = 120request_slowlog_timeout = 50slowlog = var/log/slow.log
創建php-cgi.sock存放目錄
$ mkdir /var/run/www/$ chown -R www:www /var/run/www
配置php-fpm.conf
取下以下注釋并填寫完整路徑:
pid = /usr/local/php/var/run/php-fpm.pid
至此php7已經安裝完成。
說明:禁用php函數,如果程序需要這些函數,可以取消禁止,新手建議忽略此步驟。
創建system系統單元文件php-fpm啟動腳本:
$ vim /usr/lib/systemd/system/php-fpm.service
添加如下變量內容:
[Unit]Description=The PHP FastCGI Process ManagerAfter=syslog.target network.target[Service]Type=simplePIDFile=/usr/local/php/var/run/php-fpm.pidExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.confExecReload=/bin/kill -USR2 $MAINPID[Install]WantedBy=multi-user.target
啟動php-fpm服務并加入開機自啟動:
$ systemctl enable php-fpm.service$ systemctl restart php-fpm.service
PHP整個安裝過程已經完成。如果你是按照本文安裝未成功的,希望你能留言說明錯誤原因,我將無償協助你配置。
如果你有好的建議完善該文章,非常歡迎你提出和改進,我們一起共同學習和進步。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答
圖片精選