学习centos之快速搭建LNMP环境

本文涉及的产品
RDS Agent(兼容OpenClaw),2核4GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介:

以前在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数据库。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
运维 监控 负载均衡
SpringCloud概述及与SpringBoot的关系
SpringCloud概述及与SpringBoot的关系
486 1
|
3月前
|
域名解析 弹性计算 数据可视化
阿里云服务器建站流程:创建ECS、配置网站、域名购买解析及网站上线图文教程
本文详解阿里云ECS与轻量应用服务器建站全流程:从创建实例、配置安全组、部署网站,到域名购买、实名认证、ICP备案及DNS解析,支持搭建企业官网、OA系统、论坛博客等。图文并茂,新手友好。
|
15天前
|
弹性计算 人工智能 搜索推荐
阿里云服务器ECS独享型199元一年:u1实例2核4G,5M带宽,80G云盘,续费不涨价
2026年阿里云的“云服务器低价长效”特惠活动继续,云服务器ECS通用算力型u1实例2核4G配置199元/年,续费同价至2027年3月31日,适用于Web应用、企业办公、数据分析等场景。同时提供轻量应用服务器限时抢购,2核2G配置38元/年起,2核4G配置支持OpenClaw镜像快速部署AI助理。此外,还有经济型e实例等多款云服务器特惠。用户可根据需求选择,建议根据身份、技术能力、业务场景和长期规划综合考量。
|
8月前
|
传感器 人工智能 安全
五大MES厂商聚焦智能排产与质量追溯,赋能制造数字化转型
在工业4.0背景下,MES系统成智能制造核心。本文推荐四家实力厂商:盈致科技聚焦电子制造,实现柔性生产与视觉质检;金石智能强于设备管理与物料追溯;绿能数字专注新能源能耗优化与安全监控;顺景软件打造数字孪生平台,保障配方安全与精准配料,助力企业高效转型。(238字)
|
5月前
|
人工智能 自然语言处理 搜索推荐
2025AI数字人企业TOP厂商新排行
解码数字人企业TOP10,揭秘像衍科技等领军者如何以AI+3D+语音技术重塑产业。涵盖服务、演艺、工业等多场景应用,展现虚拟主播、智能客服、数字员工等创新实践,揭示未来人机协同新生态。
|
存储 SQL 多模数据库
多模数据库Lindorm再升级:对接Dataphin,打通数据治理“最后一公里”
Lindorm通过与Dataphin的深度整合,进一步解决了数据集成和数据治理的问题,为企业提供更加高效和更具性价比的方案。
多模数据库Lindorm再升级:对接Dataphin,打通数据治理“最后一公里”
|
12月前
|
数据采集 运维 监控
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
随着互联网数据采集需求的增长,传统爬虫架构因固定IP易封禁、资源浪费及扩展性差等问题逐渐显现。本文提出基于Serverless与代理IP技术的新一代爬虫方案,通过动态轮换IP、弹性调度任务等特性,显著提升启动效率、降低成本并增强并发能力。架构图与代码示例详细展示了其工作原理,性能对比数据显示采集成功率从71%提升至92%。行业案例表明,该方案在电商情报与价格对比平台中效果显著,未来有望成为主流趋势。
504 0
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
|
安全 搜索推荐 数据可视化
提升游戏APP留存与付费:高性价比工具与实践
2024年中国移动游戏市场收入达2843.3亿元,头部产品占据超七成份额。在存量市场竞争中,留住用户成为关键。Xinstall推出三大工具:Deeplink实现无缝跳转提升转化;安全加速优化启动体验;分享统计助力社交裂变,以低成本助力开发者提升留存与付费转化率。
380 3
|
缓存 前端开发 UED
React 侧边栏组件 Sidebar
本文介绍了如何使用React创建交互式侧边栏组件,涵盖基础结构、状态管理、样式设计等方面。通过`useState`钩子控制侧边栏的展开与收起,并利用CSS实现动画效果。同时,文章还探讨了响应式设计、性能优化、可访问性和路由集成等常见问题及解决方案,帮助开发者构建高效、美观且易于维护的侧边栏组件,提升Web应用的用户体验。
578 8
|
存储 监控 安全
邮件告警通知
【10月更文挑战第20天】