Page loading

loading icon

LNMP架构的搭建

LNMP介绍

LNMP(Linux- Ngnix-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Nginx网络服务器,MySQL数据 库,Perl、PHP或者Python编程语言,所有组成产品均是开源软件,是国际上成熟的架构框架,很多流行的商业应用都是采取这个架构,和 Java/J2EE架构相比,LNMP具有Web资源丰富、轻量、快速开发等特点,微软的.NET架构相比,LNMP具有通用、跨平台、高性能、低价格的 优势,因此LAMP无论是性能、质量还是价格都是企业搭建网站的首选平台。

本文介绍lamp环境的搭建与部署,硬件为阿里云服务器,操作系统为centos7+ .

第一步:安装NGINX

Nginx (“engine x”) 是一个高性能的HTTP和反向代理服务器,其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
添加 centos7 的EPEL repository,打开命令行终端,输入以下命令(如果没有root权限,需要加sudo):

yum install epel-release

接下来安装nginx:使用如下命令:

yum install nginx

安装好以后,我们使用如下命令启动nginx:

systemctl start nginx

接下来就可以通过浏览器访问了,如果绑定了域名可以通过域名访问,没有就只能用IP访问了:

http://server_domain_name_or_IP/

如果你看到这个界面,说明安装成功了,这个是nginx的默认页面:

第二步:安装MYSQL

首先查看yum仓库有没有mysql相关包:

yum info mysql*

如果有,直接yum安装,如果没有,使用wget命令下载rpm包安装:

wget https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

解压mysql的rpm包

rpm -ivh mysql57-community-release-el7-10.noarch.rpm

解压好以后安装mysql客户端和server端:

yum install mysql mysql-server

由于mysql57启用了更加严格的安全策略,所以需要设置下才能使用,在终端输入如下命令配置:

mysql_secure_installation

具体按照提示设置就可以了,这里需要注意的是首次进入的密码,mysql安装好以后的初始化密码查看:

grep 'temporary password' /var/log/mysqld.log

启动mysql服务,和启动其它服务一样用systemctl命令:

systemctl start mysqld

第三步:安装PHP

安装以下三个包:

yum install php php-mysql php-fpm

安装好以后,找到php配置文件,修改cgi.fix_pathinfo=0:

vi /etc/php.ini

找到php-fpm配置文件:

vi /etc/php-fpm.d/www.conf

修改以下配置项:

listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nobody
listen.group = nobody
user = nginx
group = nginx

修改好并保存退出,启动php-npm:

systemctl start php-fpm

nginx、mysql、php都安装好以后要重新配置下nginx:
找到nginx配置文件:

vi /etc/nginx/conf.d/default.conf

修改如下:

server {
listen 80;
server_name server_domain_name_or_IP;
# note that these lines are originally from the "location /" block
root /usr/share/nginx/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

要想让配置生效,需要重启nginx:

systemctl restart nginx

nginx服务器都目录在 /usr/share/nginx/html/ 中,我们在这个目录下新建一个info.php文件,
输入 保存退出;在浏览器里输入:

http://your_server_IP_address/info.php

你会看到如下界面:

LNMP的配置就讲到这里,下一篇讲讲优化。