Nginx__高级进阶篇之LNMP动态网站环境部署

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: Nginx__高级进阶篇之LNMP动态网站环境部署

image.png


动态网站和LNMP(Linux+Nginx+MySQL+PHP)都是用于建立和运行 web 应用程序的技术。


动态网站是通过服务器端脚本语言(如 PHP、Python、Ruby等)动态生成网页内容的网站。通过这种方式,动态网站可以根据用户的不同请求生成不同的网页。


LNMP是一种服务器端技术组合,它使用 Linux 操作系统,Nginx 作为 Web 服务器,MySQL 作为数据库,PHP 作为服务器端脚本语言。LNMP可以用于创建和运行各种类型的 web 应用程序,包括动态网站。


总的来说,动态网站和LNMP都是用于构建和运行 web 应用程序的技术,它们在创建和提供网页内容方面有着相似之处。


LNMP动态网站环境部署



1.Linux环境部署
systemctl stop firewalld  #关闭防火墙
setenforce 0   #关闭SElinux
2.Nginx部署
yum install yum-utils  #安装yum-utils工具包
vim /etc/yum.repos.d/nginx.repo  #编辑nginx存储库配置文件
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
yum install -y nginx   #yum安装Nginx


3.php-fpm通过RPM部署


yum install -y php-fpm php-mysql php-gd   #安装PHP相关的软件包
php-fpm:PHP FastCGI 进程管理器,用于处理 PHP 脚本。
php-mysql:PHP 的 MySQL 扩展,用于与 MySQL 数据库进行交互。
php-gd:PHP 的图形处理扩展,用于处理图像操作。
systemctl restart php-fpm   #启动php-fpm
systemctl enable php-fpm    #开机自启php-fpm
yum install -y net-tools    #安装网络工具包
netstat -anpt | grep 9000   #查看进程信息  过滤出9000端口
vim /usr/share/nginx/html/index.php  #测试php页面
<?php
phpinfo();
?>
vim /etc/nginx/conf.d/default.conf    #添加php主页名称
server{
location / {
index   index.php  index.html;
}
}
vim /etc/nginx/conf.d/default.conf      #启动nginx_fastcgi功能
server {
location / {
index index.php;    #默认主页
}
location ~ \.php$ {
root /usr/share/nginx/html;     #指定php文件的根目录
fastcgi_pass 127.0.0.1:9000;    #指定本地地址,将请求传递到9000端口
fastcgi_index index.php;        #指定默认的索引文件
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;     #导入fastcgi_params文件,该文件包含fastcgl相关的配置参数
}
}
通过location指令,将所有以php为后缀的文件都交给127.0.0.1:9000来处理,而这里的IP地址和端口就是FastCGI进程监听的IP地址和端口。
fastcgi_param指令指定放置PHP动态程序的主目录,也就是$fastcgi_script_name前面指定的路径,这里是/usr/local/nginx/html目录,建议将这个目录与Nginx虚拟主机指定的根目录保持一致,当然也可以不一致。
fastcgi_params文件是FastCGI进程的一个参数配置文件,在安装Nginx后,会默认生成一个这样的文件,这里通过include指令将FastCGI参数配置文件包含了进来。
systemctl restart  nginx  #启动nginx服务
#访问服务器地址查看是否启动成功


4.Mysql 通过RPM部署


yum install -y  mariadb-server  mariadb     #安装mysql服务
systemctl start mariadb     #启动mysql服务器
systemctl enable  mariadb   #设置开机自启mysql服务器
mysqladmin password '123456'    #修改mysql的root密码
create database wordpress;      #准备数据库存放app
grant all on wordpress.* to phptest@'192.168.119.234' identified by '123456';   #授权phptest用户管理wordpress库
flush privileges;   #刷新权限
vim /usr/share/nginx/html/index.php   #修改主页测试数据库是否连接成功
<?php
$link=mysql_connect('192.168.100.10','phptest','123456');
if ($link)
              echo "Successfuly";   #成功
else
              echo "Faile";     #失败
mysql_close();      #关闭数据库连接
?>


5.项目上线


wget https://cn.wordpress.org/wordpress-4.9.1-zh_CN.zip     #上传项目zip包
unzip wordpress-4.9.1-zh_CN.zip     #解压项目zip包
rm -rf /usr/share/nginx/html/index.php  #删除/usr/share/nginx/html目录下index.php文件
cp -rf  /root/wordpress/* /usr/share/nginx/html     #将wordpress目录下的所有文件和文件夹复制到默认网站发布目录/usr/share/nginx/html/下
chown -R nginx.nginx /usr/share/nginx/html/*    #将 /usr/share/nginx/html 目录下的所有文件和文件夹的所有权更改为 nginx 用户和组
chmod 777 /usr/share/nginx/html/    #将 /usr/share/nginx/html 目录的权限设置为777,即所有用户对该目录具有读、写和执行权限


6.访问服务器地址


http://192.168.119.234

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
3月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1629 4
|
3月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
195 5
|
11月前
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
443 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
4月前
|
Kubernetes 应用服务中间件 Nacos
Kubernetes环境下Nginx代理Nacos服务请求故障诊断
以上方法不仅适用于排除特定环境下出现故障情况,也适合作为一般性指南帮助运维人员快速准确地找出并解决问题。实际操作中还需根据现场实际情况灵活运用这些技巧,并结合自身经验进行判断和处理。
151 12
|
8月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
375 14
|
10月前
|
关系型数据库 MySQL 应用服务中间件
Linux 手动安装快速部署 LNMP 环境实战
本文详细记录了在阿里云ECS上手动搭建LNMP环境的过程,系统选用Ubuntu 24.04。主要内容包括:1) 使用`apt`安装Nginx和MySQL,并更新软件源;2) 编译安装PHP 8.4.5,配置PHP-FPM及环境路径;3) 配置MySQL root用户密码;4) 调整Nginx支持PHP解析并测试整体环境。通过此过程,重现手动配置服务器的细节,帮助熟悉各组件的安装与协同工作。
753 23
|
11月前
|
关系型数据库 应用服务中间件 Linux
Linux云服务器如何搭建LNMP环境
LNMP环境是Linux系统中常用的Web服务架构,由Linux、Nginx、MySQL/MariaDB和PHP组成,适用于高效托管动态网站。本文以CentOS 7为例,详细介绍了LNMP环境的搭建步骤,包括Nginx、MariaDB和PHP的安装与配置,以及最终通过创建`index.php`文件验证环境是否成功部署。具体操作涵盖配置YUM仓库、安装服务、编辑配置文件、启动服务等关键步骤,确保用户能够顺利搭建并运行LNMP环境。
276 1
Linux云服务器如何搭建LNMP环境
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
252 6
|
应用服务中间件 Shell PHP
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站