热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

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

版本控制

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

8.复制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

9.复制fpm配置文件

10.配置php-fpm开机自启

(1)进入到php源码包(视自己的版本而定):  cd /usr/local/src/php-7.2.4
(2)复制文件: cp ./sapi/fpm/php-fpm.service  /usr/lib/systemd/system/

10.配置php-fpm开机自启

开机启动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)进入此目录

make0

(2)编辑此文件

make1

make2

11.配置错误日志和pid文件

12.配置www.conf文件

(1)进入此目录

make0/php-fpm.d

(2)复制文件

make4

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

make5

12.配置www.conf文件

二、安装Nginx

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

make6

2.解压安装包

make7

3.进入解压后的源码包

make8

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

make9

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

make

make install

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


Linux
推荐阅读
  • phpmysql一键安装包,Mysql安装包
    本文目录一览:1、哪里有PHPMySQLDatabaseApacheServer一 ... [详细]
  • 系统管理部分软件包管理进程管理服务管理磁盘管理系统管理之软件包管理软件包的安装方式yumapt方式rpmdpkg方式编译安装方式二进制安装方式rpm安装方式增删改查安装:-ivh查 ... [详细]
  •  在使用PHP多年之后,我对PHP的优势和劣势已经非常清楚,与后起之秀Golang相比,两者已经不在一个重量级。 PHP更像是70kg级别的选手,脚本语言,极速开发,部署方便,性能 ... [详细]
  • Bootstrap datetimepicker控件 日期时间选择器 简单使用
    bootstrap-datetimepicker日期控件简单使用应用场景:表单日期 ... [详细]
  • 1、为什么要对nginx平滑升级随着nginx越来越流行,并且nginx的优势也越来越明显,nginx的版本迭代也来时加速模式,1.9. ... [详细]
  • 高并发网站架构的核心原则其实就一句话“把所有的用户访问请求都尽量往前推“,即:能缓存在用户电脑本地的,就不要让他去访问CDN。能缓存CDN服务器上的,就不要让CDN去访问源(静态服 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • php array_unique函数的用法?
    后端开发|PHP问题php,array_unique函数后端开发-PHP问题array_unique()是PHP中的内置函数,语法为array_unique(array,sort_ ... [详细]
  • 1.以前的方法如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。如果是要获得当前执行的脚本的所在目录位置,那么需 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • MACElasticsearch安装步骤及验证方法
    本文介绍了MACElasticsearch的安装步骤,包括下载ZIP文件、解压到安装目录、启动服务,并提供了验证启动是否成功的方法。同时,还介绍了安装elasticsearch-head插件的方法,以便于进行查询操作。 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 解决php错误信息不显示在浏览器上的方法
    本文介绍了解决php错误信息不显示在浏览器上的方法。作者发现php中的各种错误信息并不显示在浏览器上,而是需要在日志文件中查看。为了解决这个问题,作者提供了一种解决方式:通过修改php.ini文件中的display_errors参数为On,并重启服务。这样就可以在浏览器上直接显示php错误信息了。 ... [详细]
author-avatar
小可爱小潴
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有