CentOS 7 下编译安装lnmp之PHP篇详解

一、安装环境

宿主机=> win7,虚拟机 centos => 系统版本:centos-release-7-5.1804.el7.centos.x86_64

二、PHP下载

官网 http://www.php.net/downloads.php 下载 php-7.3.0.tar.bz2 至 /usr/local/src 目录下

解压并移动至 /usr/local/下,重命名为php7

[root@bogon src]# tar -jxf php-7.3.0.tar.bz2 
[root@bogon src]# mv php-7.3.0 /usr/local/php7
[root@bogon src]# ls /usr/local/php7
acinclude.m4      genfiles         php.ini-development               run-tests.php
aclocal.m4        header           php.ini-production                sapi
appveyor          INSTALL          README.EXT_SKEL                   scripts
build             install-sh       README.GIT-RULES                  server-tests-config.php
buildconf         LICENSE          README.input_filter               server-tests.php
buildconf.bat     ltmain.sh        README.MAILINGLIST_RULES          snapshot
CODING_STANDARDS  main             README.md                         stamp-h.in
config.guess      makedist         README.NEW-OUTPUT-API             tests
config.sub        Makefile.frag    README.PARAMETER_PARSING_API      travis
configure         Makefile.gcov    README.REDIST.BINS                TSRM
configure.ac      Makefile.global  README.RELEASE_PROCESS            UPGRADING
CONTRIBUTING.md   missing          README.SELF-CONTAINED-EXTENSIONS  UPGRADING.INTERNALS
CREDITS           mkinstalldirs    README.STREAMS                    vcsclean
ext               NEWS             README.SUBMITTING_PATCH           win32
EXTENSIONS        pear             README.TESTING                    Zend
footer            php7.spec.in     README.UNIX-BUILD-SYSTEM
generated_lists   php.gif          README.WIN32-BUILD-SYSTEM

三、PHP7编译安装

1、安装依赖

[root@bogon src]# yum install gd zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel

2、配置参数

[root@bogon php7]# ./configure --prefix=/usr/local/php7 --with-gd --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --enable-mbstring --enable-fpm

     运行结果

Thank you for using PHP.

config.status: creating php7.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/fpm/php-fpm.conf
config.status: creating sapi/fpm/www.conf
config.status: creating sapi/fpm/init.d.php-fpm
config.status: creating sapi/fpm/php-fpm.service
config.status: creating sapi/fpm/php-fpm.8
config.status: creating sapi/fpm/status.html
config.status: creating sapi/phpdbg/phpdbg.1
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: main/php_config.h is unchanged
config.status: executing default commands

3、编译安装

[root@bogon php7]# make && make install

四、启动PHP7

1、测试启动PHP进程

[root@bogon php7]# ./sbin/php-fpm 
[24-Dec-2018 12:42:24] ERROR: failed to open configuration file '/usr/local/php7/etc/php-fpm.conf': No such file or directory (2)
[24-Dec-2018 12:42:24] ERROR: failed to load configuration file '/usr/local/php7/etc/php-fpm.conf'
[24-Dec-2018 12:42:24] ERROR: FPM initialization failed

大意是在 /usr/local/php7/etc/ 目录下找不到 php-fpm.conf,进入该目录查看

[root@bogon php7]# ls etc
pear.conf  php-fpm.conf.default  php-fpm.d

只有 php-fpm.conf.default文件,复制一份更名为 php-fpm.conf

[root@bogon php7]# cp etc/php-fpm.conf.default etc/php-fpm.conf
[root@bogon php7]# ls etc
pear.conf  php-fpm.conf  php-fpm.conf.default  php-fpm.d

     再次启动

[root@bogon php7]# ./sbin/php-fpm 
[24-Dec-2018 12:48:02] WARNING: Nothing matches the include pattern '/usr/local/php7/etc/php-fpm.d/*.conf' from /usr/local/php7/etc/php-fpm.conf at line 143.
[24-Dec-2018 12:48:02] ERROR: No pool defined. at least one pool section must be specified in config file
[24-Dec-2018 12:48:02] ERROR: failed to post process the configuration
[24-Dec-2018 12:48:02] ERROR: FPM initialization failed
去 /usr/local/php7/etc/php-fpm.conf 的143行查看
[root@bogon php7]# vi etc/php-fpm.conf

143 include=/usr/local/php7/etc/php-fpm.d/*.conf

查看 /usr/local/php7/etc/php-fpm.d 目录

[root@bogon php7]# ls etc/php-fpm.d
www.conf.default

只有www.conf.default,复制一份重命名为 www.conf

[root@bogon php7]# cp etc/php-fpm.d/www.conf.default etc/php-fpm.d/www.conf
[root@bogon php7]# ls etc/php-fpm.d
www.conf  www.conf.default

再次启动 php-fpm

[root@bogon php7]# ./sbin/php-fpm 
[root@bogon php7]# ps aux | grep php
root     14280  0.0  0.5 181200  5620 ?        Ss   12:54   0:00 php-fpm: master process (/usr/local/php7/etc/php-fpm.conf)
nobody   14281  0.0  0.5 181200  5220 ?        S    12:54   0:00 php-fpm: pool www
nobody   14282  0.0  0.5 181200  5220 ?        S    12:54   0:00 php-fpm: pool www
root     14284  0.0  0.0 112704   960 pts/0    R+   12:54   0:00 grep --color=auto php

进程启动成功,查看php详细版本信息

[root@bogon php7]# ./bin/php -v
PHP 7.3.0 (cli) (built: Dec 24 2018 12:33:07) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies

2、设置开机启动

     2.1、在系统服务目录里创建php7.,service文件

[root@bogon php7]# vi /lib/systemd/system/php7.service

    2.2、添加如下内容

[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

    2.3、添加到开机启动

[root@bogon php7]# systemctl enable php7.service

    2.4、启动php7服务

[root@bogon php7]# pkill -9 php-fpm
[root@bogon php7]# systemctl start php7
[root@bogon php7]# systemctl status php7
● php7.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php7.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2018-12-24 13:09:56 CST; 7s ago
 Main PID: 14401 (php-fpm)
   CGroup: /system.slice/php7.service
           ├─14401 php-fpm: master process (/usr/local/php7/etc/php-fpm.conf)
           ├─14402 php-fpm: pool www
           └─14403 php-fpm: pool www

Dec 24 13:09:56 bogon systemd[1]: Started The PHP FastCGI Process Manager.
Dec 24 13:09:56 bogon systemd[1]: Starting The PHP FastCGI Process Manager...

至此,php7编译安装完毕。

 

转载于:https://www.cnblogs.com/splendid/p/10167811.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 7是一种流行的Linux操作系统,LNMP代表着使用Linux、Nginx、MySQL和PHP构建的服务器环境。在CentOS 7上编译安装LNMP可以提供一个非常强大和灵活的Web服务器环境。 首先,我们需要在CentOS 7上安装必要的软件包和依赖项。打开终端,使用以下命令安装必要的软件包: ``` sudo yum install -y epel-release ``` 接下来,我们需要安装LNMP的各个组件。首先,安装Nginx: ``` sudo yum install -y nginx ``` 安装完成后,启动Nginx服务: ``` sudo systemctl start nginx ``` 然后,我们需要安装MySQL数据库。使用以下命令安装MySQL: ``` sudo yum install -y mariadb-server mariadb ``` 安装完成后,启动MySQL服务: ``` sudo systemctl start mariadb ``` 接下来,我们需要设置MySQL的安全性选项: ``` sudo mysql_secure_installation ``` 按照提示设置密码和其他选项。 最后,我们需要安装PHP。使用以下命令安装PHP及相关扩展: ``` sudo yum install -y php php-fpm php-mysql ``` 安装完成后,启动PHP-FPM服务: ``` sudo systemctl start php-fpm ``` 现在,您的CentOS 7上已经成功安装LNMP。您可以通过在浏览器中输入服务器的IP地址来测试您的Web服务器,您将看到Nginx的默认欢迎页面。您可以将您的Web应用程序放置在Nginx的默认根目录"/usr/share/nginx/html"下,或者您可以根据需要进行自定义。 这只是一个简单的步骤指南,您可能需要根据您的具体需求进行一些其他设置和配置。不过,这个简单的安装方法应该可以让您在CentOS 7上快速搭建一个LNMP服务器环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值