【超詳細的】CentOS 下手動編譯 PHP7.* 開機自啟 環境變數 防火牆等配置

jerrkill發表於2018-12-22

1 安裝php常用庫

yum -y install php-mcrypt libmcrypt-devel libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libmemcached phpmemcached

2 安裝php

## 下載安裝包,版本按照自己的需求下載
wget http://us3.php.net/distributions/php-7.1.20.tar.gz

## 解壓安裝包
tar -xvf php-7.1.20.tar.gz

## 進入解壓後的目錄
cd php-7.1.20

## 配置資訊 --prefix 是安裝目錄
./configure --prefix=/usr/local/php7 \--with-config-file-path=/usr/local/php7/etc \--with-mcrypt=/usr/include \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--with-mysql-sock=/tmp/mysql.sock \--enable-mysqlnd \--with-gd \--with-iconv \--with-zlib \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-inline-optimization \--enable-mbregex \--enable-fpm \--enable-mbstring \--enable-ftp \--enable-gd-native-ttf \--with-openssl \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-zip \--enable-soap \--with-gettext \--with-curl \--with-jpeg-dir \--with-freetype-dir \--with-libmemcached-dir=/usr/local/libmemcached

## 編譯和安裝
make && make install

3 修改配置

3.1 修改php配置

## 複製php的配置檔案
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
cp /php-7.0.16/php.ini-production /usr/local/php7/etc/php.ini
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf

## 編輯php-fpm.conf
vim /usr/local/php7/etc/php-fpm.conf

## 配置內容
pid = /run/php-fpm.pid

## 編輯www.conf
vim /usr/local/php7/etc/php-fpm.d/www.conf

## 配置內容,這裡的listen要跟nginx中的代理埠要一樣的哦 也可以都改成sock地址
listen = 127.0.0.1:9000

3.2 將php-fpm管理器新增到systemctl系統服務中

## 編輯檔案
vi /usr/lib/systemd/system/php-fpm.service

## 配置內容
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target

[Service]
Type=simple
PIDFile=/run/php-fpm.pid
ExecStart=/usr/local/php7/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php7/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID

[Install]
WantedBy=multi-user.target

$MAINPID 是特殊環境變數,表示主程式,比如這裡 php-fpm 的主程式為 7,$MAINPID 就為 7

3.3 將php新增到系統環境變數

vim /etc/profile

## 配置資訊,多個環境變數用英文“:”隔開
export PATH=$PATH:/usr/local/nginx/sbin:/usr/local/php7/bin

3.4 新增系統命令後systemctl常用命令

## 開機執行服務
systemctl enable php-fpm.service

## 取消開機執行
systemctl disable php-fpm.service

## 啟動服務
systemctl start php-fpm.service

## 停止服務
systemctl stop php-fpm.service

## 重啟服務
systemctl restart php-fpm.service

## 重新載入服務配置檔案
systemctl reload php-fpm.service

## 查詢服務執行狀態
systemctl status php-fpm.service

## 顯示啟動失敗的服務
systemctl --failed

3.5 開啟防火牆xx埠

firewall-cmd --zone=public --add-port=xx/tcp --permanent
#需要重啟生效 很重要

高度自律,深度思考,以勤補拙

相關文章