环境:Centos 7.x
独立php-fpm.conf配置文件
[root@master playbook]# tree php
php
├── php-fpm.conf
└── php.yml
php.yml文件如下:
- hosts: localhost
vars:
- php_version: 7.1.16
- php_user: www
tasks:
- name: add php run user
user: name={{ php_user }}
- name: install wget
yum: name=wget state=latest
- name: download php-{{ php_version }}.tar.gz
get_url:
url: http://cn2.php.net/distributions/php-{{ php_version }}.tar.gz
dest: "{{ lookup('env','HOME') }}/php-{{ php_version }}.tar.gz"
- name: download epel
get_url:
url: https://mirrors.aliyun.com/repo/epel-7.repo
dest: /etc/yum.repos.d/epel-7.repo
- name: php dependence
yum: name={{ item }} state=latest
with_items:
- make
- curl-devel
- libjpeg-devel
- libpng-devel
- freetype-devel
- libxml2-devel
- libcurl-devel
- openssl-devel
- libmcrypt-devel
- bison
- file
- re2c
- autoconf
- ImageMagick-devel
- gcc-c++
- name: install php
shell: cd {{ lookup('env','HOME') }};tar -xf php-{{ php_version }}.tar.gz;cd php-{{ php_version }};./configure --prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--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 \
--enable-exif \
--with-curl \
--enable-mbregex \
--enable-mbstring \
--with-mcrypt \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--with-gettext \
--enable-opcache;make -j`grep processor /proc/cpuinfo |wc -l`&& make install
- name: copy conf file php.ini
shell: cp {{ lookup('env','HOME') }}/php-{{ php_version }}/php.ini-production /usr/local/php7/etc/php.ini
- name: copy php-fpm init
shell: cp {{ lookup('env','HOME') }}/php-{{ php_version }}/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm;chmod +x /etc/init.d/php-fpm;chkconfig --add php-fpm;chkconfig php-fpm on
- name: copy php-fpm.conf
template: src=php-fpm.conf dest=/usr/local/php7/etc/php-fpm.conf
- name: start php services
shell: /etc/init.d/php-fpm restart