天天看點

Linux服務搭建篇:centos7編譯安裝LNMP環境

作者:雲計算練習生

LNMP環境是一種常用于搭建Web伺服器的軟體組合,其中L代表Linux作業系統,N代表Nginx Web伺服器,M代表MySQL資料庫,P代表PHP程式設計語言。

Linux服務搭建篇:centos7編譯安裝LNMP環境

LNMP環境具有以下優點:

1. 高性能:Nginx是一個高性能的Web伺服器,可以處理大量并發請求,而MySQL也是一個高性能的關系型資料庫。

2. 穩定性:LNMP環境基于Linux作業系統,是以具有良好的穩定性和可靠性。

3. 安全性:Nginx具有高度的安全性和可靠性,可以有效地保護Web伺服器免受攻擊。

4. 易用性:LNMP環境非常易于使用和配置,可以快速搭建一個強大的Web伺服器。

LNMP環境通常用于搭建各種類型的Web應用程式,例如電子商務網站、社交媒體平台、部落格、論壇等。它也是許多網際網路公司和Web開發人員使用的首選環境之一。

1 安裝包版本以及下載下傳位址

mysql5.6.31、nginx1.10.1、php5.6.30

軟體版本稍微有點舊,幾年前寫的文檔,不過編譯安裝的方式都差不多。

軟體下載下傳位址:

https://wangxuejin-data-1252194948.cos.ap-shanghai.myqcloud.com/nginx-1.10.1.tar.gz

https://wangxuejin-data-1252194948.cos.ap-shanghai.myqcloud.com/mysql-5.6.31.tar.gz

https://wangxuejin-data-1252194948.cos.ap-shanghai.myqcloud.com/php-5.6.30.tar.gz

2 安裝nginx

2.1 安裝依賴環境

[root@55cea6de73cb ]# yum install gcc gcc-c++ openssl openssl-devel pcre pcre-devel zlib zlib-devel -y

2.2 解壓nginx壓縮包

[root@2df7fb5c5f50 opt]# tar xf nginx-1.10.1.tar.gz

Linux服務搭建篇:centos7編譯安裝LNMP環境

2.3 配置nginx

[root@2df7fb5c5f50 ]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module

Linux服務搭建篇:centos7編譯安裝LNMP環境

沒有報錯表示配置成功

2.4 編譯并安裝

[root@2df7fb5c5f50 opt]# make && make install

Linux服務搭建篇:centos7編譯安裝LNMP環境

沒有報錯表示安裝成功

2.5 啟動nginx服務

[root@2df7fb5c5f50 opt]# /usr/local/nginx/sbin/nginx

Linux服務搭建篇:centos7編譯安裝LNMP環境

檢視監聽端口

2.6 通路nginx首頁

本地虛拟機先關閉防火牆,雲伺服器開放80端口即可

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如上表示nginx安裝成功

增加環境變量友善啟動

[root@2df7fb5c5f50 opt]# echo "export PATH=$PATH:/usr/local/nginx/sbin" >>/etc/profile

//立即生效

[root@2df7fb5c5f50 opt]# source /etc/profile

//重新開機nginx服務測試

[root@2df7fb5c5f50 opt]# nginx -s reload

Linux服務搭建篇:centos7編譯安裝LNMP環境

3 安裝mysql資料庫

3.1 解壓mysql安裝包

[root@2df7fb5c5f50 opt]# tar xf mysql-5.6.31.tar.gz

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.2 安裝依賴環境

[root@2df7fb5c5f50 opt]# yum install -y cmake bison bison-devel libaio-devel gcc gcc-c++ git ncurses-devel

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.3配置mysql

[root@2df7fb5c5f50 mysql-5.6.31]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data

指定安裝目錄和資料存儲目錄

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如下表示配置成功

3.4 編譯并安裝mysql

[root@2df7fb5c5f50 mysql-5.6.31]# make && make install

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如下沒有報錯表示安裝成功

3.5 初始化配置mysql

[root@2df7fb5c5f50 mysql-5.6.31]# cd /usr/local/mysql/

[root@2df7fb5c5f50 mysql]# useradd -s /sbin/nologin mysql

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.6 修改權限,目前目錄授權給mysql使用者

[root@2df7fb5c5f50 mysql]# chown mysql.mysql -R .

3.7 安裝mysql系統表

[root@2df7fb5c5f50 mysql]# rm -f /etc/my.cnf 删除系統自帶的my.cnf配置檔案

[root@2df7fb5c5f50 mysql]# ./scripts/mysql_install_db --user=mysql

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如下表示安裝成功

3.8複制配置檔案到/etc/下

[root@2df7fb5c5f50 mysql]# cp support-files/my-default.cnf /etc/my.cnf

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.9以完整路徑啟動mysql資料庫

[root@2df7fb5c5f50 mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql &

[1] 26282

[root@2df7fb5c5f50 mysql]# 190805 07:45:58 mysqld_safe Logging to '/usr/local/mysql/data/2df7fb5c5f50.err'.

190805 07:45:59 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.10 檢視程序是否啟動成功

Linux服務搭建篇:centos7編譯安裝LNMP環境
Linux服務搭建篇:centos7編譯安裝LNMP環境

3.11 複制服務程序到/etc/init.d/下

[root@2df7fb5c5f50 mysql]# cp support-files/mysql.server /etc/init.d/mysqld

Linux服務搭建篇:centos7編譯安裝LNMP環境

重新開機服務

[root@2df7fb5c5f50 mysql]# /etc/init.d/mysqld restart

Shutting down MySQL..190805 07:47:52 mysqld_safe mysqld from pid file /usr/local/mysql/data/2df7fb5c5f50.pid ended

SUCCESS!

Starting MySQL. SUCCESS!

  1. + Done /usr/local/mysql/bin/mysqld_safe --user=mysql
Linux服務搭建篇:centos7編譯安裝LNMP環境

3.12 配置環境變量

[root@2df7fb5c5f50 mysql]# echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile

Linux服務搭建篇:centos7編譯安裝LNMP環境

生效

[root@2df7fb5c5f50 mysql]# source /etc/profile

Linux服務搭建篇:centos7編譯安裝LNMP環境

3.13 第一次登陸沒有密碼需要設定mysql密碼

[root@2df7fb5c5f50 mysql]# mysql -u root -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.6.31 Source distribution

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Linux服務搭建篇:centos7編譯安裝LNMP環境

mysql>

//修改root密碼

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> update mysql.user set password=password('Aa123456') where user='root';

Query OK, 4 rows affected (0.00 sec)

Rows matched: 4 Changed: 4 Warnings: 0

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

Linux服務搭建篇:centos7編譯安裝LNMP環境

至此mysql資料庫安裝成功

4 安裝php

4.1 安裝依賴環境

[root@2df7fb5c5f50 opt]# yum install -y gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.2 解壓php安裝包

[root@2df7fb5c5f50 opt]# tar xf php-5.6.30.tar.gz

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.3 配置php

[root@2df7fb5c5f50 php-5.6.30]# ./configure --prefix=/usr/local/php-fpm --enable-fpm --with-zlib --with-pdo-mysql --enable-mbstring --with-gd --with-png-dir=/usr/lib64 --with-jpeg-dir=/usr/lib64 --with-freetype-dir=/usr/lib64 --with-mysql-sock=/tmp/mysql.sock --with-mysqli=/usr/local/mysql/bin/mysql_config

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如下表示編譯成功

4.4 編譯并安裝

[root@2df7fb5c5f50 php-5.6.30]# make && make install

Linux服務搭建篇:centos7編譯安裝LNMP環境

出現如下提示表示安裝成功

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.5 修改配置檔案名字

[root@2df7fb5c5f50 php-5.6.30]# cd /usr/local/php-fpm/etc/

[root@2df7fb5c5f50 etc]# cp php-fpm.conf.default php-fpm.conf

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.6 配置php的配置檔案

[root@2df7fb5c5f50 etc]# vim php-fpm.conf

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.7 修改使用者和使用者組為web

Linux服務搭建篇:centos7編譯安裝LNMP環境
Linux服務搭建篇:centos7編譯安裝LNMP環境

啟動服務

[root@2df7fb5c5f50 etc]# useradd -s /sbin/nologin web

[root@2df7fb5c5f50 etc]# /usr/local/php-fpm/sbin/php-fpm

設定php-fpm服務友善啟動

[root@2df7fb5c5f50 /]# cp /opt/php-5.6.30/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

Linux服務搭建篇:centos7編譯安裝LNMP環境

4.8 檢查服務是否啟動

Linux服務搭建篇:centos7編譯安裝LNMP環境
Linux服務搭建篇:centos7編譯安裝LNMP環境

至此PHP服務安裝完成

5 nginx開啟支援php

[root@2df7fb5c5f50 conf]# vim /usr/local/nginx/conf/nginx.conf

45行增加index.php

65-71行去掉注釋,修改fastcgi_param這一行

Linux服務搭建篇:centos7編譯安裝LNMP環境
Linux服務搭建篇:centos7編譯安裝LNMP環境

6 測試

[root@2df7fb5c5f50 conf]# vim /usr/local/nginx/html/index.php

打開網頁測試看是否能解析php語言

Linux服務搭建篇:centos7編譯安裝LNMP環境

至此LNMP安裝完成

Linux服務搭建篇:centos7編譯安裝LNMP環境

至此centos7編譯安裝LNMP環境結束,有不對的地方希望不吝賜教,歡迎在評論區留言,分享你的看法。

繼續閱讀