Home >Backend Development >PHP Tutorial >LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

小云云
小云云Original
2018-02-24 10:33:522115browse


Compilation and installation environment

The host is 172.25.23.6 hostname:server6.com
Kernel version:2.6.32-431.el6.x86_64
The software package used is php-5.6.20.tar.bz2
Additional packages:
libmcrypt-2.5.8-9.el6.x86_64.rpm
libmcrypt-devel-2.5.8-9.el6.x86_64.rpm

  • Error in execution./configure

  • Error:

configure: error: xml2-config not found. Please check your libxml2 installation.
  • Solution:

[root@server6 php-5.6.20]# yum install -y libxml2-devel
  • Error:

configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/
  • Solution

[root@server6 php-5.6.20]# yum install curl-devel -y
  • Error:

If configure fails try --with-vpx-dir=<DIR>
configure: error: jpeglib.h not found.
  • Solution

[root@server6 php-5.6.20]# yum install -y libjpeg-turbo-devel
  • Error:

If configure fails try --with-vpx-dir=<DIR>checking for jpeg_read_header in -ljpeg... yes
configure: error: png.h not found.
  • Solution

[root@server6 php-5.6.20]# yum install libpng-devel -y
  • Error:

If configure fails try --with-xpm-dir=<DIR>configure: error: freetype-config not found.
  • Solution

[root@server6 php-5.6.20]# yum install freetype-devel-2.3.11-14.el6_3.1.x86_64 -y
  • Error:

configure: error: Unable to locate gmp.h
  • Solution

[root@server6 php-5.6.20]# yum install gmp-devel-4.3.1-7.el6_2.2.x86_64 -y
  • Error:

configure: error: mcrypt.h not found. Please reinstall libmcrypt.
  • Solution

libmcrypt-2.5.8-9.el6.x86_64.rpmlibmcrypt-devel-2.5.8-9.el6.x86_64.rpm[root@server6 php-5.6.20]# yum install ~/libmcrypt-* -y
  • Error :

configure: error: Could not find net-snmp-config binary. Please check your net-snmp installation.
  • Solution

[root@server6 php-5.6.20]# yum install net-snmp-devel -y
  • Compile

[root@server6 php-5.6.20]# ./configure --prefix=/usr/local/lnmp/php/ \> --with-config-file-path=/usr/local/lnmp/php/etc \> --with-openssl \> --with-snmp \> --with-gd \> --with-zlib \> --with-curl \> --with-libxml-dir \> --with-png-dir \> --with-jpeg-dir \> --with-freetype-dir \> --with-gettext \> --without-pear \> --with-gmp \> --enable-inline-optimization \> --enable-soap \> --enable-ftp \> --enable-sockets> --enable-mbstring> --with-mysql> --with-mysqli> --with-pdo-mysql> --enable-mysqlnd> --enable-fpm> --with-fpm-user=nginx> --with-fpm-group=nginx> --with-mcrypt > --with-mhash
  • The execution needs to be completed after
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • and then execute the make command

[root@server6 php-5.6.20]# make No log handling enabled - turning on stderr logging
Created directory: /var/lib/net-snmp/mib_indexes
Generating phar.phar
PEAR package PHP_Archive not installed: generated phar will require PHP&#39;s phar extension be enabled.
clicommand.inc
directorytreeiterator.inc
invertedregexiterator.inc
directorygraphiterator.inc
pharcommand.inc
phar.inc
  • Ensure that the result appears as needed
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • executemake install

[root@server6 php-5.6.20]# make installInstalling shared extensions:     /usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20131226/Installing PHP CLI binary:        /usr/local/lnmp/php/bin/Installing PHP CLI man page:      /usr/local/lnmp/php/php/man/man1/Installing PHP FPM binary:        /usr/local/lnmp/php/sbin/
  • Need to appear
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Modify the configuration file

[root@server6 php-5.6.20]# cd /usr/local/lnmp/php/[root@server6 php]# cd etc/[root@server6 etc]# cp php-fpm.conf.default php-fpm.conf[[root@server6 etc]# cp ~/php-5.6.20/php.ini-production /usr/local/lnmp/php/etc/php.ini
  • Modify, the previous value indicates the line number

[root@server6 etc]# vim php.ini925  date.timezone = Asia/Shanghai1001 pdo_mysql.default_socket= /usr/local/lnmp/mysql/data/mysql.sock1150 mysql.default_socket = /usr/local/lnmp/mysql/data/mysql.sock1209 mysqli.default_socket = /usr/local/lnmp/mysql/data/mysql.sock

[root@server6 etc]# vim php-fpm.conf25 pid = run/php-fpm.pid
  • Copy startup script

[root@server6 php-5.6.20]# cd sapi/fpm/[root@server6 fpm]# pwd/root/php-5.6.20/sapi/fpm
[root@server6 fpm]# cp init.d.php-fpm /etc/init.d/php-fpm[root@server6 fpm]# chmod +x /etc/init.d/php-fpm
  • Start the service and check the status

[root@server6 fpm]# /etc/init.d/php-fpm startStarting php-fpm  done

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Modify Nginx’s configuration file

[root@server6 fpm]# cd /usr/local/lnmp/nginx/conf/[root@server6 conf]# vim nginx.conf

    location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;            include        fastcgi.conf;
        }
  • Test the correctness of the modified configuration file

[root@server6 conf]# nginx -tnginx: the configuration file /usr/local/lnmp/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/lnmp/nginx/conf/nginx.conf test is successful
[root@server6 conf]# nginx

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing
* Check whether your service starts normally
LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing
* Provide a default page for php

[root@server6 nginx]# cd html/[root@server6 html]# ls50x.html  index.html
[root@server6 html]# vim index.php<?php
phpinfo()
?>
  • Access via browser Test

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • InstallDiscuzForum Program

[root@server6 ~]# unzip Discuz_X3.2_SC_UTF8.zip -d /usr/local/lnmp/nginx/html/[root@server6 ~]# cd /usr/local/lnmp/nginx/html/[root@server6 html]# mv upload/ bbs[root@server6 html]# cd bbs/[root@server6 bbs]# chmod 777 config/ data/ uc_client/ uc_server/ -R
  • Configuration via browser

  • Discuz’s welcome page
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Need to make sure that no red x appears on this page
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Installation page for successful database connection
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • Access
      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • through the following connection to view the additional information in the database

    • ultraxThe database created for Discuz;
      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • Information on the tables in the database
      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • ##Compilation of Nginx and Mysql Installation

http://blog.csdn.net/qq_36294875/article/details/79352522

[MySQL5.7.11 compilation and installation] http://blog.csdn.net/qq_36294875/article/details/79344943
[Nginx compilation, installation and simple configuration]

  • Compilation and installation environment

The host is

172.25.23.6 hostname:server6.com Kernel version:
2.6.32-431.el6.x86_64 The software package used is
php-5.6.20.tar.bz2 Additional packages:
libmcrypt-2.5.8-9.el6.x86_64.rpm
libmcrypt-devel-2.5.8-9.el6.x86_64.rpm

  • Error in execution./configure

  • Error:

  • configure: error: xml2-config not found. Please check your libxml2 installation.
  • Solution:

  • [root@server6 php-5.6.20]# yum install -y libxml2-devel
  • Error:

  • configure: error: Please reinstall the libcurl distribution -
        easy.h should be in <curl-dir>/include/curl/
  • Solution

  • [root@server6 php-5.6.20]# yum install curl-devel -y
  • Error:

  • If configure fails try --with-vpx-dir=<DIR>
    configure: error: jpeglib.h not found.
  • Solution

  • [root@server6 php-5.6.20]# yum install -y libjpeg-turbo-devel
  • Error:

  • If configure fails try --with-vpx-dir=<DIR>checking for jpeg_read_header in -ljpeg... yes
    configure: error: png.h not found.
  • Solution

  • [root@server6 php-5.6.20]# yum install libpng-devel -y
  • Error:

  • If configure fails try --with-xpm-dir=<DIR>configure: error: freetype-config not found.
  • Solution

  • [root@server6 php-5.6.20]# yum install freetype-devel-2.3.11-14.el6_3.1.x86_64 -y
  • Error:

  • configure: error: Unable to locate gmp.h
  • Solution

  • [root@server6 php-5.6.20]# yum install gmp-devel-4.3.1-7.el6_2.2.x86_64 -y
  • Error:

  • configure: error: mcrypt.h not found. Please reinstall libmcrypt.
  • Solution

  • libmcrypt-2.5.8-9.el6.x86_64.rpmlibmcrypt-devel-2.5.8-9.el6.x86_64.rpm[root@server6 php-5.6.20]# yum install ~/libmcrypt-* -y
  • Error :

  • configure: error: Could not find net-snmp-config binary. Please check your net-snmp installation.
  • Solution

  • [root@server6 php-5.6.20]# yum install net-snmp-devel -y
  • Compile

  • [root@server6 php-5.6.20]# ./configure --prefix=/usr/local/lnmp/php/ \> --with-config-file-path=/usr/local/lnmp/php/etc \> --with-openssl \> --with-snmp \> --with-gd \> --with-zlib \> --with-curl \> --with-libxml-dir \> --with-png-dir \> --with-jpeg-dir \> --with-freetype-dir \> --with-gettext \> --without-pear \> --with-gmp \> --enable-inline-optimization \> --enable-soap \> --enable-ftp \> --enable-sockets> --enable-mbstring> --with-mysql> --with-mysqli> --with-pdo-mysql> --enable-mysqlnd> --enable-fpm> --with-fpm-user=nginx> --with-fpm-group=nginx> --with-mcrypt > --with-mhash
  • The execution needs to be completed after


    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • and then execute the

    make command

  • [root@server6 php-5.6.20]# make No log handling enabled - turning on stderr logging
    Created directory: /var/lib/net-snmp/mib_indexes
    Generating phar.phar
    PEAR package PHP_Archive not installed: generated phar will require PHP&#39;s phar extension be enabled.
    clicommand.inc
    directorytreeiterator.inc
    invertedregexiterator.inc
    directorygraphiterator.inc
    pharcommand.inc
    phar.inc
  • Ensure that the result appears as needed


    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • execute

    make install

  • [root@server6 php-5.6.20]# make installInstalling shared extensions:     /usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20131226/Installing PHP CLI binary:        /usr/local/lnmp/php/bin/Installing PHP CLI man page:      /usr/local/lnmp/php/php/man/man1/Installing PHP FPM binary:        /usr/local/lnmp/php/sbin/
  • Need to appear


    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Modify the configuration file

  • [root@server6 php-5.6.20]# cd /usr/local/lnmp/php/[root@server6 php]# cd etc/[root@server6 etc]# cp php-fpm.conf.default php-fpm.conf[[root@server6 etc]# cp ~/php-5.6.20/php.ini-production /usr/local/lnmp/php/etc/php.ini
  • Modify, the previous value indicates the line number

  • [root@server6 etc]# vim php.ini925  date.timezone = Asia/Shanghai1001 pdo_mysql.default_socket= /usr/local/lnmp/mysql/data/mysql.sock1150 mysql.default_socket = /usr/local/lnmp/mysql/data/mysql.sock1209 mysqli.default_socket = /usr/local/lnmp/mysql/data/mysql.sock
    
    [root@server6 etc]# vim php-fpm.conf25 pid = run/php-fpm.pid
  • Copy startup script

  • [root@server6 php-5.6.20]# cd sapi/fpm/[root@server6 fpm]# pwd/root/php-5.6.20/sapi/fpm
    [root@server6 fpm]# cp init.d.php-fpm /etc/init.d/php-fpm[root@server6 fpm]# chmod +x /etc/init.d/php-fpm
  • Start the service and check the status

  • [root@server6 fpm]# /etc/init.d/php-fpm startStarting php-fpm  done

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Modify

    Nginx’s configuration file

  • [root@server6 fpm]# cd /usr/local/lnmp/nginx/conf/[root@server6 conf]# vim nginx.conf
    
        location ~ \.php$ {
                root           html;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;            include        fastcgi.conf;
            }
  • Test the correctness of the modified configuration file

  • [root@server6 conf]# nginx -tnginx: the configuration file /usr/local/lnmp/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/lnmp/nginx/conf/nginx.conf test is successful
    [root@server6 conf]# nginx

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing* Check whether your service starts normally

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing* Provide a default page for
php

[root@server6 nginx]# cd html/[root@server6 html]# ls50x.html  index.html
[root@server6 html]# vim index.php<?php
phpinfo()
?>

  • Access via browser Test

LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Install

    DiscuzForum Program

  • [root@server6 ~]# unzip Discuz_X3.2_SC_UTF8.zip -d /usr/local/lnmp/nginx/html/[root@server6 ~]# cd /usr/local/lnmp/nginx/html/[root@server6 html]# mv upload/ bbs[root@server6 html]# cd bbs/[root@server6 bbs]# chmod 777 config/ data/ uc_client/ uc_server/ -R
  • Configuration via browser

  • Discuz’s welcome page
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Need to make sure that no red

    x appears on this page
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

  • Installation page with successful database connection
    LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • Access through the following connection
      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • Go to view the extra information in the database

    • ##ultrax Created for Discuz Database;
      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • Information about the tables in the database


      LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing

    • ##Related recommendations:

    Detailed introduction to the sample code for compiling and installing PHP7 on CentOS7 (picture)

    Source code compilation and installation of PHP under CentOS for Linux+php+apache+oracle environment construction

    Questions about compiling and installing PHP

The above is the detailed content of LNMP compilation and installation of PHP as well as LNMP configuration and verification example sharing. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn