学习centos之快速搭建LNMP环境

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

以前在centos下安装软件都是喜欢源码安装,不过昨天因为一个事情需要一个centos 下的LNMP环境。反倒不会搞了,今天特意记录下,以备后续使用。

一、安装nginx

我们先来安装nginx,如下:

yum -y install nginx

clip_image001

通过上图,我们可以看到目前的yum源中是没有nginx软件包的。我们需要安装包含nginx的yum源,如下:

rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

clip_image002

查看刚刚安装的rpm包,如下:

rpm -ql nginx-release-centos-6-0.el6.ngx.noarch

clip_image003

通过上图,我们可以很明显的看出刚刚安装的rpm包,只是新添加了一个nginx的yum源。查看该yum源,如下:

cat /etc/yum.repos.d/nginx.repo

clip_image004

或者直接修改yum仓库,添加以下内容:

  [nginx]
  name=nginx repo
  baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
  gpgcheck=0
  enabled=1

现在我们再来通过yum来安装nginx,如下:

yum -y install nginx

clip_image005

通过上图,我们可以很明显的看出nginx已经安装。

现在来查看nginx安装的位置及其文件,如下:

rpm -ql nginx

clip_image006

通过上图,我们可以很明显的看出nginx默认安装到/etc/nginx目录,而nginx的默认网站安装到/usr/share/nginx/html目录下。

现在我们来启动nginx,并访问nginx。如下:

/etc/init.d/nginx start

curl http://192.168.1.124

clip_image007

clip_image008

查看nginx运行时使用的用户,如下:

ps -ef |grep nginx

clip_image009

通过上图,我们可以很明显的看出nginx是root用户启动,但是nginx运行时使用的是nginx这个用户。

二、安装php及php-fpm

安装php及php-fpm,使用如下命令:

yum -y install php php-fpm

clip_image010

查看php-fpm安装的位置及其文件,如下:

rpm -ql php-fpm

clip_image011

启动php-fpm,使用如下命令:

/etc/init.d/php-fpm start

ps -ef |grep php-fpm

netstat -tunlp |grep 1355

clip_image012

通过上图,我们可以看出php-fpm运行时使用apache这个用户,而且php-fpm监听的是本机的9000端口。

如果要修改php-fpm运行时的用户及端口的话,我们可以通过修改php-fpm配置文件/etc/php-fpm.d/www.conf,如下:

cat /etc/php-fpm.d/www.conf |grep -v ‘^;’|grep -v ^$

clip_image013

三、nginx与php集成

nginx与php集成是通过fastcgi来实现,而fastcgi我们一般使用的是php-fpm。在第二章,我们已经启动php-fpm,现在我们来修改nginx配置文件使其支持php。

现在我们修改nginx的默认网站配置文件default.conf,如下:

cat /etc/nginx/conf.d/default.conf

server {

listen 80;

server_name localhost;

location / {

root /usr/share/nginx/html;

index index.php index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

location ~ \.php$ {

root /usr/share/nginx/html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

}

clip_image014

以上配置完毕后,我们再重启nginx和php-fpm,如下:

/etc/init.d/nginx restart

/etc/init.d/php-fpm restart

clip_image015

clip_image016

以上是修改nginx的默认网站,现在我们新加一个nginx虚拟主机,并使其支持php,如下:

vi /etc/nginx/conf.d/ilanni.conf

server {

listen 80;

server_name test.ilanni.com;

location / {

root /ilanni;

index index.php index.html index.htm;

}

location ~ \.php$ {

root /ilanni;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

}

clip_image017

nginx虚拟主机配置文件完毕后,现在来创建虚拟主机ilanni的index.php,如下:

mkdir /ilanni

vi /ilanni/index.php

<?php phpinfo(); ?>

clip_image018

修改ilanni目录的所属用户,如下:

chown nginx:nginx -R /ilanni/

ll /ilanni/

clip_image019

如上图所示,我们现在把ilanni这个目录修改为nginx运行时使用的用户nginx。

现在我们再来修改php-fpm运行时的用户,如下:

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

clip_image020

我们来重启nginx与php-fpm,如下:

/etc/init.d/nginx restart

/etc/init.d/php-fpm restart

clip_image021

clip_image022

通过上图,我们可以看到nginx的虚拟主机已经可以正确解析php。

四、安装mysql

安装MySQL,使用如下命令:

yum -y install mysql mysql-server php-mysql

clip_image023

安装完毕后,启动mysql。如下:

/etc/init.d/mysqld start

clip_image024

现在我们在nginx默认网站创建一个mysql.php文件,用来连接mysql数据库。mysql.php内容如下:

cat /usr/share/nginx/html/mysql.php

<?php

$host=’localhost’;

$root=’root’;

$pwd=”;

$con= mysql_connect($host,$root,$pwd);

if ( $con == false ) {

echo “connect false”;

} else{

echo “connect true”;

}

?>

clip_image025

重启nginx、php-fpm、mysql,如下:

/etc/init.d/nginx restart

/etc/init.d/php-fpm restart

/etc/init.d/mysqld restart

clip_image026

现在通过访问该mysql.php文件,如下:

http://192.168.1.124/mysql.php

clip_image027

通过上图,我们可以很明显的看出php已经解析mysql.php文件,并且也已经成功的连接mysql数据库。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8月前
|
关系型数据库 MySQL 应用服务中间件
centos7 配置LNMP环境
centos7 配置LNMP环境
|
7月前
|
关系型数据库 MySQL 应用服务中间件
基于Ubuntu搭建LNMP环境
本教程介绍如何在Ubuntu 18.04操作系统的ECS实例上搭建一套Nginx、MySQL和PHP应用的开发环境。
101 0
|
7月前
|
Linux 应用服务中间件 网络安全
手动部署LNMP环境(CentOS 8)
本场景带您体验如何在CentOS 8操作系统的云服务器上搭建LNMP环境。
104 0
|
弹性计算 关系型数据库 MySQL
基于CentOS快速搭建LAMP环境笔记
基于CentOS快速搭建LAMP环境笔记
297 0
基于CentOS快速搭建LAMP环境笔记
|
关系型数据库 应用服务中间件 Linux
Ubuntu 18.10 下搭建 LNMP 环境
安装前准备(root密码设置和vim安装): 设置和安装好的大神们请忽略 刚安装好Ubantu的同学请设置系统root用户密码(此密码务必记住),执行下列语句: sudo passwd 没有安装vim的请先安装,因为vim在linux上是非常有用的。
4483 0
|
关系型数据库 应用服务中间件 PHP
Centos7YUM快速搭建LNMP环境并简易优化
下载并安装NGINX wget http://nginx.org/packages/mainline/centos/7/x86_64/RPMS/nginx-1.13.9-1.el7_4.ngx.x86_64.
1975 0
|
关系型数据库 MySQL 应用服务中间件
|
MySQL 关系型数据库 应用服务中间件
|
Web App开发 关系型数据库 应用服务中间件
|
关系型数据库 MySQL 应用服务中间件