当前位置: 首页 > news >正文

LNMP(linux+nginx+mysql+php)和Wordpress部署

1 测试环境

Windows虚拟机(Hyper-V)安装openEuler 24.03,使用默认交换机,可以直接访问互联网资源。

使用Hyper-V,需要关闭“安全启动”选项,否则无法安装系统。

实测,WSL安装openEuler 24.03亦可,且与VS Code兼容性更好。

2 安装LNMP

# 更新软件源和系统 dnf clean all dnf makecache dnf update # 安装nginx并设置开机自启 dnf install -y nginx systemctl enable nginx --now # 安装、启动mysql-server dnf install -y mysql-server systemctl enable mysqld --now # 数据库初始化 mysql_secure_installation # 密码强度校验“n” # 禁用匿名用户“yes” # 禁用root用户远程登陆“yes” # 删除测试库和权限“yes” # 重新加载数据库访问权限“yes” # 测试mysql用户名密码,输入密码验证是否正常登录 mysql -uroot -p # 可以使用如下命令修改密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码'; FLUSH PRIVILEGES; exit # 安装PHP及常用扩展 dnf install -y php-fpm php-mysqlnd php-cli php-curl php-gd php-mbstring php-xml php-zip # 查看php版本 php -v

3 php-fpm配置

查看php-fpm用户名,并修改为nginx:

ps aux | grep php-fpm vi /etc/php-fpm.d/www.conf

编辑以下内容:

user = nginx

group = nginx
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

;listen.acl_users = apache,nginx

测试php-fpm运行是否正常:

ps -ef | grep php-fpm

4 web配置

创建网站目录、创建测试文件、编辑网站配置文件:

mkdir -p /data/www/ chown -R nginx:nginx /data/www echo "<?php phpinfo(); ?>" > /data/www/info.php cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf~ vi /etc/nginx/nginx.conf

openEuler中nginx的默认配置文件非常友好,只需编辑以下内容:

server { #默认配置…… root /data/www; #默认配置…… location / { try_files $uri $uri/ /index.php?$args; } #默认配置…… }

语法检查、重启服务:

nginx -t systemctl restart nginx

浏览器测试:

http://localhost/info.php

如无法访问,需放行防火墙和selinux配置。

firewall-cmd --permanent --add-service=http firewall-cmf --reload setsebool -P httpd_read_user_content 1 setsebool -P httpd_enable_homedirs 1 setsebool -P httpd_can_network_connect 1 chcon -R -t httpd_sys_content_t /data/www

5 创建wordpress数据库

mysql -u root -p # 以下为mysql命令 CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'wpuser'@'localhost' IDENTIFIED BY '密码'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost'; FLUSH PRIVILEGES; EXIT;

6 Wordpress初始化

从官网下载wordpress安装包,解压,将文件下的所有目录和文件上传到网站根目录。

链接: https://yun.139.com/shareweb/#/w/i/2v3Ew0Yurwzq4
提取码: um3l

修改所有文件属主为nginx:

cp -r wordpress/* /data/www/dong chown -R nginx:nginx /data/www/dong

在浏览器中输入:网页IP地址

进入初始化界面,点击:现在就开始,填写用户名、密码,其他项为默认,点击:提交。

点击提交后大概率会遇到404错误,无需纠结,排查错误可能需要付出巨大努力,可以通过直接修改配置文件方式规避错误。

cp -a /data/www/wp-config-sample.php /data/www/wp-config.php vi /data/www/wp-config.php

编辑以下内容:

define( 'DB_NAME', 'wordpress' );
define( 'DB_USER', 'wpuser' );
define( 'DB_PASSWORD', '数据库密码' );

重启nginx、php-fpm服务,刷新页面即可继续安装。

这里需要填写登录wordpress后台的用户名和密码。

点击“安装Wordpress”,安装完成即可进入登录界面。

不足之处,敬请批评指正。

http://www.gsyq.cn/news/1483826.html

相关文章:

  • 电商图片下载工具技术原理:从浏览器内核到智能分类
  • 考研复习 Day 47 | 密码学--第七章 公钥密码(下)
  • 别再手动调格式了!用Jaspersoft Studio 6.2.0搞定PDF报表排版(附常见报错解决)
  • 第二板块:Android 四大组件标准化学理 | 第六篇:四大组件架构总论与 Manifest 规范
  • 信号处理入门:5分钟搞懂Butterworth滤波器阶数与截止频率怎么选
  • 别再为没有PDB文件发愁了:用JetBrains dotPeek搭建本地符号服务器,轻松调试任意NuGet包源码
  • 从Wi-Fi信号到音频均衡器:手把手拆解幅频/相频在真实电子设备中的应用
  • ESP32-S3驱动WS2812灯带:从原理图到代码,手把手搞定RMT配置
  • TVA与MES/SCADA对接关键协议兼容方案
  • 别再到处找图了!我整理了全套Apriltag TAG16H5高清大图(附Python脚本一键下载)
  • 六年之约第二年年度目标
  • 别再死磕公式了!用Python手搓一个Cartographer概率地图更新模拟器(附代码)
  • 从FLM到烧录器:保姆级教程教你为自制的CMSIS-DAP离线下载器生成专属下载算法
  • Claude Code + DeepSeek 从零安装教程:面向纯小白,6 步拥有自己的 AI 编程助手
  • 从硬件视角看SR-IOV:一张物理网卡如何被‘切分’成256个虚拟设备?
  • 别再用LED硬凑了!Proteus里Traffic Lights元件怎么用?附C51单片机交通灯代码
  • 2026年脱水明矾选购指南,去哪里找靠谱的厂家 - myqiye
  • 给网络小白讲明白:家里那根‘光猫’线,背后是OLT、ONU和ODN在怎么‘干活’?
  • 新手避坑指南:用Altium Designer 18画STM32F103C8T6核心板原理图,从库安装到连线实战
  • 编程的思路Linux学习思路
  • 手把手教你用纯C语言(只用stdio.h)实现SM4国密算法,附完整可运行代码
  • 教资科三音乐教案模板|初中高中音乐教学设计资料
  • 07-MCP 上篇:从配置到生产力 —— 给 AI 装上手脚
  • 深度自编码器在非线性动力学维度估计中的应用
  • 一行代码实现通道混洗:用PyTorch复现ShuffleNet核心操作,并可视化看看它到底怎么‘洗牌’的
  • 探讨球场灯口碑哪家好,君力光电如何 - myqiye
  • 抖音视频批量下载全攻略:3步实现去水印、多格式、智能管理
  • Android启动安全实战:手把手教你用avbtool给dtbo分区镜像签名(附完整命令)
  • ArkUI 入门:Text 组件背景属性
  • Qt 高级开发 027: QTabWidget自定义样式表美化实战