linux环境下编译部署php生产环境

版本控制
php:7.2.4
nginx:1.9.9
部分插件版本
xlswriter:1.3.3.2
redis:3.1.3

一、安装php

1.安装依赖(之后安装缺少的依赖都可以用yum安装)

yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

2.下载php源码包
可放到任意目录,也可在根目录下新建文件夹,我放在根目录下新建的文件夹中。
3.解压php源码包(根据自己下载的版本而定)
tar -zxvf php-7.2.4.tar.gz
4.进入到刚解压的php源码目录
cd php-7.2.4
5.启用部分插件
./:是linux的命令,代表运行这段指令。
prefix=/usr/local/php:这个是php源码编译后的路径。
with-config-file-path=/usr/local/php/etc:这个是php编译后配置文件的路径,之后的php.ini文件也要放在这个路径下,要不然识别不到。
--with-:代表引入了某个插件。
--enable-:代表启用这个插件。
--disable-:代表不启用这个插件。
\:代表换行。
此处的插件并不完整,之后可以按需对插件进行编译安装或者在源码包中安装,后续会提到部分插件在源码包下安装。

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-xmlreader \
--enable-xmlwriter \
--enable-soap \
--enable-calendar \
--with-curl \
--with-zlib \
--with-gd \
--with-pdo-sqlite \
--with-pdo-mysql \
--with-mysqli \
--with-mysql-sock \
--enable-mysqlnd \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--enable-exif \
--enable-bcmath \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-openssl \
--enable-ftp \
--with-kerberos \
--with-gettext \
--with-xmlrpc \
--with-xsl \
--enable-fpm \
--with-fpm-user=php-fpm \
--with-fpm-group=php-fpm \
--enable-fileinfo

6.编译
如果步骤5没有报类似error的错误,进行此步骤,如果有报错优先解决报错,重新执行步骤5,直到步骤5没报错再执行此步骤。

make

7.安装
如果步骤6没有报类似error的错误,进行此步骤,如果有报错优先解决报错,重新执行步骤6,直到步骤6没报错再执行此步骤。

make install

8.复制php.ini配置文件
如果步骤7没有报类似error的错误,进行此步骤,如果有报错优先解决报错,之后再进行此步骤。进入到之前解压的php源码包中,找到php.ini-production文件,然后执行以下指令。

cp php.ini-production /usr/local/php/etc/php.ini

在这里插入图片描述
9.复制fpm配置文件
将/usr/local/php/etc路径下的php-fpm.conf.default文件复制到此路径下并且重命名为php-fpm.conf。
(1)进入fpm配置文件目录:cd /usr/local/php/etc
(2)复制并且重命名文件:cp php-fpm.conf.default php-fpm.conf
在这里插入图片描述
10.配置php-fpm开机自启
(1)进入到php源码包(视自己的版本而定):
cd /usr/local/src/php-7.2.4
(2)复制文件:
cp ./sapi/fpm/php-fpm.service /usr/lib/systemd/system/
在这里插入图片描述
开机启动php-fpm:

systemctl enable php-fpm

启动php-fpm:

systemctl start php-fpm

查看状态:

systemctl status php-fpm

添加环境变量:
打开此文件 vim /etc/profile
在文件末尾追加以下内容,保存退出:

export PATH=$PATH:/usr/local/php/bin/

使配置文件立即生效。

source /etc/profile

测试(出现如下图内容即成功):

 php -v

在这里插入图片描述
11.配置错误日志和pid文件
(1)进入此目录

cd /usr/local/php/etc

(2)编辑此文件,

vim php-fpm.conf
配置错误日志(18行)
    error_log = /usr/local/php/var/php-fpm.log
配置pid文件(26行)
    pid = /usr/local/php/var/run/php-fpm.pid
保存并退出

在这里插入图片描述
12.配置www.conf文件
(1)进入此目录

cd /usr/local/php/etc/php-fpm.d

(2)复制文件

cp www.conf.default  www.conf

(3)编辑vim www.conf,修改为下图的样子,此文件其他参数视公司标准而定

vim www.conf

在这里插入图片描述

二、安装Nginx

1.下载Nginx源码包(如果没有安装wget命令,可以直接把后面的网址复制到浏览器下载,然后用xpft将压缩包传到系统中)

wget http://nginx.org/download/nginx-1.9.9.tar.gz

2.解压安装包

tar -zxvf nginx-1.9.9.tar.gz

3.进入解压后的源码包

cd nginx-1.9.9

4.执行编译指令(Nginx编译后的目录:–prefix=/usr/local/nginx\)

 ./configure --user=nginx\
             --group=nginx\
             --prefix=/usr/local/nginx\
             --with-http_stub_status_module\
             --with-http_ssl_module\
             --with-http_gzip_static_module\
             --with-ipv6

5.安装(如果第4步没有报任何error的错误,则继续执行此步骤,有报错的话先解决报错,再重新执行第四步,直到没有报错再依次执行此步骤)

make
make install

6.修改配置文件(配置文件nginx.conf的修改尽量参考公司的配置要求)

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐