Home Backend Development PHP Tutorial Lnmp environment setup

Lnmp environment setup

Aug 08, 2016 am 09:19 AM
mysql php tar usr

1. Check and install components

1

yum -y install gcc automake autoconf libtool make gcc-c++ glibc

Copy after login

2. Install libraries

1

2

3

4

5

yum -y install libxslt-devel \

libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel \

zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel \

ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel \

krb5-devel libidn libidn-devel openssl openssl-devel

Copy after login

3. Install libmcrypt

1

2

3

4

5

6

7

8

9

cd /usr/local/src

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz

tar zxvf libmcrypt-2.5.7.tar.gz

cd libmcrypt-2.5.7

./configure --prefix=/usr/local/libmcrypt

make && make install

vi /etc/ld.so.conf.d/local.conf

添加 “/usr/local/libmcrypt/lib”

ldconfig -v

Copy after login

4. Install PHP

1

2

3

4

5

6

7

8

9

10

wget http://cn2.php.net/get/php-5.6.11.tar.gz/from/this/mirror

tar zxvf php-5.6.11.tar.gz

cd php-5.6.11

./configure --prefix=/usr/local/php  --enable-fpm --with-mcrypt=/usr/local/libmcrypt \

--enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath \

--enable-inline-optimization --with-bz2  --with-zlib --enable-sockets \

--enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex \

--with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli \

--with-gd --with-jpeg-dir --with-openssl

make && make install

Copy after login

Successfully installed:

Configure php-fpm

1

2

cd /usr/local/php/etc

cp php-fpm-default.conf php-fpm.conf

Copy after login

Modifyphp-fpm.conf

1

vi php-fpm.conf

Copy after login
Copy after login

Modify user = nobody group = nobody to user = phpz group = phpz

Create user phpz and user group phpz

1

2

groupadd phpz

useradd -g phpz phpz

Copy after login

Create php.ini

1

cp /usr/local/src/php-5.6.11/php.ini-production /usr/local/php/lib/php.ini

Copy after login

Set php-fpm.pid

1

vi php-fpm.conf

Copy after login
Copy after login

Delete the semicolon in front of;pid = run/php-fpm.pid.

Note: Restart php-fpm Command: kill -USR2 `cat var/run/php-fpm.pid`

4. Install Nginx

1

cd /usr/local/src

Copy after login

Download and unzip pcre-8.36.tar.gz:

1

2

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz

tar zxvf pcre-8.36.tar.gz

Copy after login

Download and unzip zlib-1.2.8.tar.gz:

1

2

wget http://zlib.net/zlib-1.2.8.tar.gz

tar zxvf zlib-1.2.8.tar.gz

Copy after login

Download and unzip openssl-1.0.1g.tar.gz:

1

2

wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz

tar zxvf openssl-1.0.1g.tar.gz

Copy after login

Download and unzip nginx-1.4.7 .tar.gz:

1

2

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

tar zxvf nginx-1.4.7.tar.gz

Copy after login

Install Nginx

1

2

3

4

5

6

7

vi /usr/bin/pod2man #注释第69行

cd /usr/local/src/nginx-1.4.7

./configure --prefix=/usr/local/nginx \

--with-http_ssl_module \

--with-pcre=/usr/local/src/pcre-8.36 \

--with-zlib=/usr/local/src/zlib-1.2.8 \

--with-openssl=/usr/local/src/openssl-1.0.1g

Copy after login

Start nginx

1

2

cd /usr/local/nginx

./sbin/nginx

Copy after login

Browser access: http://localhost

Configure nginx.conf and let Nginx process it through PHP's FastCGI To request, first go to the nginx installation directory cd /usr/local/nginx, modify the vi conf/nginx.conf file, and find the following content:

Uncomment, and then change /scripts$fastcgi_script_name to $document_root$fastcgi_script_name

New A php file

1

2

cd /usr/local/nginx/html

vi index.php

Copy after login

1

2

3

<?php

echo phpinfo();

?>

Copy after login

Start php-fpm, restart nginx

1

2

/usr/local/php/sbin/php-fpm

/usr/local/nginx/sbin/nginx -s reload

Copy after login

Browser visit http://127.0.0.1/index.php

5. Install MySQL

Download:

1

2

cd /usr/local/src

wget http://mirrors.sohu.com/mysql/MySQL-Cluster-7.4/mysql-cluster-gpl-7.4.7.tar.gz

Copy after login

First install cmake:

1

yum -y install cmake

Copy after login

Add a user and group named "mysql":

1

2

groupadd mysql

useradd -r -g mysql mysql

Copy after login

Unzip mysql-cluster-gpl-7.4.7.tar.gz:

1

tar zxvf mysql-cluster-gpl-7.4.7.tar.gz

Copy after login

cmake command As follows:

1

2

3

4

5

6

7

8

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DMYSQL_TCP_PORT=3306 \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/run/mysql.sock \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_SSL=yes

Copy after login

Install MySQL:

1

make && make install

Copy after login

The installation will take a while, you can have a cup of tea

Initialize the database, first change the directory to the MySQL installation directory:

1

cd /usr/local/mysql/

Copy after login

Then change the user and group of all files in the installation directory to mysql

1

2

chown -R mysql .

chgrp -R mysql .

Copy after login

Initialize the database:

1

./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql

Copy after login

Then change the user of all files in the directory to "root", and then change the directory "data ” is changed to “mysql” (this step is very important, otherwise the database may not be able to operate this directory):

1

2

3

4

chown -R root .

chown -R mysql data

chown -R mysql data/mysql

chown -R mysql.mysql /usr/local/mysql/data

Copy after login

Copy the MySQL configuration file to the configuration file directory “/etc/” and ask if To overwrite the source file, enter "yes":

1

cp support-files/my-medium.cnf /etc/my.cnf

Copy after login

To set up MySQL

I set it as the "run/" folder in the installation directory, so I need to set the user of this folder to "mysql ":

1

chown -R mysql ./run

Copy after login

The next step is the most iconic step, running the MySQL daemon:

1

bin/mysqld_safe --user=mysql &

Copy after login

Set a password for the "root" account in the MySQL database:

1

./bin/mysqladmin -u root password '123456'

Copy after login

Use the "root" account to enter MySQL In the management system:

1

./bin/mysql -u root -p

Copy after login

Just enter the password when the prompt pops up. The interface after entering should be similar to this:

Congratulations, you have successfully set up the Lnmp environment.

Summary:

Linux: CentOS-7-x86_64-DVD-1503-01.iso

PHP: php-5.6.11.tar.gz

Nginx: nginx-1.4.7

MySQL: mysql-cluster -gpl-7.4.7.tar.gz

If you have any questions, please ask them in the original comments. Please indicate the source when reprinting (original website): http://home.php-z.com/blog-1-39.html

The above introduces the Lnmp environment construction, including the relevant aspects. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement of this Website
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1655
14
PHP Tutorial
1253
29
C# Tutorial
1227
24
Laravel Introduction Example Laravel Introduction Example Apr 18, 2025 pm 12:45 PM

Laravel is a PHP framework for easy building of web applications. It provides a range of powerful features including: Installation: Install the Laravel CLI globally with Composer and create applications in the project directory. Routing: Define the relationship between the URL and the handler in routes/web.php. View: Create a view in resources/views to render the application's interface. Database Integration: Provides out-of-the-box integration with databases such as MySQL and uses migration to create and modify tables. Model and Controller: The model represents the database entity and the controller processes HTTP requests.

Solve database connection problem: a practical case of using minii/db library Solve database connection problem: a practical case of using minii/db library Apr 18, 2025 am 07:09 AM

I encountered a tricky problem when developing a small application: the need to quickly integrate a lightweight database operation library. After trying multiple libraries, I found that they either have too much functionality or are not very compatible. Eventually, I found minii/db, a simplified version based on Yii2 that solved my problem perfectly.

The Continued Use of PHP: Reasons for Its Endurance The Continued Use of PHP: Reasons for Its Endurance Apr 19, 2025 am 12:23 AM

What’s still popular is the ease of use, flexibility and a strong ecosystem. 1) Ease of use and simple syntax make it the first choice for beginners. 2) Closely integrated with web development, excellent interaction with HTTP requests and database. 3) The huge ecosystem provides a wealth of tools and libraries. 4) Active community and open source nature adapts them to new needs and technology trends.

Laravel framework installation method Laravel framework installation method Apr 18, 2025 pm 12:54 PM

Article summary: This article provides detailed step-by-step instructions to guide readers on how to easily install the Laravel framework. Laravel is a powerful PHP framework that speeds up the development process of web applications. This tutorial covers the installation process from system requirements to configuring databases and setting up routing. By following these steps, readers can quickly and efficiently lay a solid foundation for their Laravel project.

MySQL and phpMyAdmin: Core Features and Functions MySQL and phpMyAdmin: Core Features and Functions Apr 22, 2025 am 12:12 AM

MySQL and phpMyAdmin are powerful database management tools. 1) MySQL is used to create databases and tables, and to execute DML and SQL queries. 2) phpMyAdmin provides an intuitive interface for database management, table structure management, data operations and user permission management.

MySQL vs. Other Programming Languages: A Comparison MySQL vs. Other Programming Languages: A Comparison Apr 19, 2025 am 12:22 AM

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages ​​such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages ​​have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

Solve MySQL mode problem: The experience of using the TheliaMySQLModesChecker module Solve MySQL mode problem: The experience of using the TheliaMySQLModesChecker module Apr 18, 2025 am 08:42 AM

When developing an e-commerce website using Thelia, I encountered a tricky problem: MySQL mode is not set properly, causing some features to not function properly. After some exploration, I found a module called TheliaMySQLModesChecker, which is able to automatically fix the MySQL pattern required by Thelia, completely solving my troubles.

The Compatibility of IIS and PHP: A Deep Dive The Compatibility of IIS and PHP: A Deep Dive Apr 22, 2025 am 12:01 AM

IIS and PHP are compatible and are implemented through FastCGI. 1.IIS forwards the .php file request to the FastCGI module through the configuration file. 2. The FastCGI module starts the PHP process to process requests to improve performance and stability. 3. In actual applications, you need to pay attention to configuration details, error debugging and performance optimization.

See all articles