Centos7下構(gòu)建LNMP平臺(tái)全過程
一、準(zhǔn)備環(huán)境
環(huán)境
[root@localhost ~]# cat /etc/centos-release //發(fā)行版本 CentOS Linux release 7.6.1810 (Core) [root@localhost ~]# uname -r //內(nèi)核 3.10.0-957.el7.x86_64
源碼包
[root@localhost opt]# ls Discuz_X3.4_SC_UTF8.zip mysql-boost-5.7.20.tar.gz nginx-1.15.9.tar.gz php-7.1.10.tar.bz2 rh [root@localhost opt]#
二、搭建LNMP
1.編譯安裝Nginx
1.1 下載安裝Nginx所需依賴包
[root@localhost sbin]# yum -y install gcc gcc-c++ pcre-devel zlib-devel make
1.2 添加用戶
Nginx服務(wù)程序默認(rèn)以nobody身份運(yùn)行,建議為其創(chuàng)建專門的用戶賬號(hào),以便更準(zhǔn)確地控制其訪問權(quán)限,增加靈活性、降低安全風(fēng)險(xiǎn)
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
1.3 編譯安裝
[root@localhost ~]# cd /opt/nginx-1.15.9/ [root@localhost ~]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module [root@localhost ~]# make && make install
1.4 路徑優(yōu)化
為了使Nginx服務(wù)器的運(yùn)行更加方便,可以為主程序nginx創(chuàng)建鏈接文件,以便管理員直接執(zhí)行“nginx"命令就可以調(diào)用Nginx的主程序
[root@localhost ~]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //加入環(huán)境變量
1.5 檢查配置文件
[root@localhost ~]# nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful [root@localhost ~]#
1.6 開啟服務(wù)

2.編譯安裝MySQL
2.1 下載安裝MySQL所需依賴包
[root@localhost ~]# yum -y install ncurses ncurses-devel bison cmake
2.2 添加用戶
[root@localhost ~]# useradd -s /sbin/nogin mysql
2.3 編譯安裝
[root@localhost ~]# cd /opt/mysql-5.7.20/ [root@localhost mysql-5.7.20]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DSYSCONFDIR=/etc -DSYSTEMD_PID_DIR=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost -DWITH_SYSTEMD=1 [root@localhost mysql-5.7.20]# make && make install
2.4 遞歸修改文件屬主和屬組
[root@localhost mysql-5.7.20]# chown -R mysql:mysql /usr/local/mysql
2.5 修改配置文件
[root@localhost mysql-5.7.20]# vim /etc/my.cnf [client] #client用戶程序 port = 3306 default-character-set=utf8 socket = /usr/local/mysql/mysql.sock ##連接數(shù)據(jù)庫的數(shù)據(jù)端 [mysql] #mysql軟件內(nèi)容 port = 3306 #端口 default-character-set=utf8 socket = /usr/local/mysql/mysql.sock [mysqld] #以后對(duì)msq1配置時(shí)更多的會(huì)針對(duì)于mysqld進(jìn)行配置 user = mysql #程序用戶 basedir = /usr/local/mysql ## 工作目錄 datadir = /usr/local/mysql/data ##數(shù)據(jù)文件目錄 port = 3306 ##端口 character_set_server=utf8 ##服務(wù)的字符集 pid-file = /usr/local/mysql/mysqld.pid ##PID文件目錄 socket = /usr/local/mysql/mysql.sock ##通訊文件 server-id = 1 ##服務(wù)id,在之后的mysql集群中用于標(biāo)識(shí)mysq1服務(wù)器 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES ##模塊,默認(rèn)加載 [root@localhost mysql-5.7.20]# chown mysql:mysql /etc/my.cnf
2.6 配置環(huán)境變量
[root@localhost bin]# echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile [root@localhost bin]# echo 'export PATH' >> /etc/profile [root@localhost bin]# source /etc/profile
2.7 初始化數(shù)據(jù)庫
[root@localhost bin]# /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
2.8 開啟服務(wù)
[root@localhost mysql]# cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system //mysql自帶控制腳本,直接復(fù)制到系統(tǒng)服務(wù)文件夾中 [root@localhost mysql]# systemctl start mysqld //開啟服務(wù) [root@localhost mysql]# netstat -antp | grep 3306 //查看狀態(tài) tcp6 0 0 :::3306 :::* LISTEN 95872/mysqld
2.9 修改mysql數(shù)據(jù)庫密碼
[root@localhost mysql]# mysqladmin -uroot -p password Enter password: //初始無密碼,直接回車 New password: Confirm new password: Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety. [root@localhost mysql]#

3.編譯安裝PHP
3.1 下載安裝PHP所需依賴包
[root@localhost mysql]# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
3.2 編譯安裝
[root@localhost php-7.1.10]# cd /opt/php-7.1.10/ [root@localhost php-7.1.10]# ./configure --prefix=/usr/local/php --with-mysql-sock=/usr/local/mysql/mysql.sock --with-mysqli --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-openssl --enable-fpm --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo --enable-tokenizer --enable-zip [root@localhost php-7.1.10]# make && make install
3.3 修改配置文件
[root@localhost ~]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf [root@localhost ~]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
取消注釋,讓其可運(yùn)行

3.4 修改核心配置文件
[root@localhost ~]# cp /opt/php-7.1.10/php.ini-development /usr/local/php/lib/php.ini [root@localhost ~]# vim /usr/local/php/lib/php.ini


3.5 啟動(dòng)PHP
[root@localhost ~]# /usr/local/php/sbin/php-fpm -c /usr/local/php/lib/php.ini [root@localhost ~]# netstat -antp | grep 9000 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 104224/php-fpm: mas [root@localhost ~]#
3.6 讓Nginx支持PHP
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

3.7 重啟nginx,查看服務(wù)

總結(jié)
LNMP與LAMP相比,由Nginx代替了Apache,PHP在LAMP中只是作為后臺(tái)程序運(yùn)行,在LNMP中開啟了pid功能,以9000端口的方式運(yùn)行起來
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決navicat連接不上linux服務(wù)器上的mysql問題
這篇文章主要介紹了navicat連接不上linux服務(wù)器上的mysql的解決辦法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10
Centos7遠(yuǎn)程桌面 vnc/vnc-server的設(shè)置詳解
這篇文章主要介紹了Centos7遠(yuǎn)程桌面 vnc/vnc-server的設(shè)置詳解的相關(guān)資料,需要的朋友可以參考下2016-10-10
淺談Linux C語言動(dòng)態(tài)庫及靜態(tài)庫
下面小編就為大家?guī)硪黄獪\談Linux C語言動(dòng)態(tài)庫及靜態(tài)庫。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01
詳解Ubuntu16.04下Hadoop 2.7.3的安裝與配置
本篇文章主要介紹了詳解Ubuntu16.04下Hadoop 2.7.3的安裝與配置,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-01-01
嵌入式Linux Platform驅(qū)動(dòng)模型測(cè)試方式
這篇文章主要介紹了嵌入式Linux Platform驅(qū)動(dòng)模型測(cè)試方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-05-05

