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

docker与phpstudy两种方式部署wordpress 并 开启伪静态

实际测试,可能是docker内存限制的缘故,docker部署的会比较卡

下载

wordpress
phpstudy
phpstudy中伪静态配置

伪静态

正常访问 WordPress 文章页的 URL 地址为 http://asa/index.php?p=123。变成伪静态就是http://asa/123.html 。
伪静态是相对真实静态来讲的,真实静态会生成一个html或htm后缀的文件,访客能够访问到真实存在的静态页面,而伪静态则没有生成实体静态页面文件,而仅仅是以.html一类的静态页面形式,但其实是用PHP程序动态脚本来处理的,这就是伪静态。
真实静态通常是为了更好的缓解服务器压力,和增强搜索引擎的友好面,所以都将网页内容生成静态页面。但最大缺陷是每次在网站后台修改网页内容都需要重新生成静态页面,无法实时显示更新的内容,而久之网站内容多了,占用的空间大小以及每次生成静态页面所耗费的服务器资源也不容小觑(有出现内容过多且一次性生成静态页面而导致服务器崩溃的案例)。
由于伪静态是用正则判断需要跳转到的页面而不是真实页面地址,分辨到底显示哪个页面的责任也由直接指定转由服务器CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病。
WordPress 伪静态就是把默认的动态链接转变成静态链接的操作。常见的搜索引擎对于动态链接和静态链接是一视同仁的,都会很好的收录。不过为了更美观、直白,和对搜索引擎更友好,还是建议大家使用 wordpress伪静态链接。
伪静态页面其本质还是动态页面,在用户访问时调用数据库的文章内容,如果网站访问量很大的话,会造成服务器负担重。这时候就需要缓存插件了。
linux服务器可通过使用 Memcached可以把网站文章缓存到内存中。是服务器层面的缓存加速,生成的内容放在内存中。因为是在内存中,所以访问速度较快
Wordpress也有很多缓存插件可以实现静态页面。比如 wp-supercache插件。这款插件能够生成html文件,用户访问到的是真正的html文件。生成的文件放在硬盘中。
wp设置伪静态需要2步:

  1. 设置WP的管理页面,让WP本身支持伪静态;
  2. 调整服务器设置,让服务器支持伪静态;

phpstudy部署

下载wp 6.3.1 版本后,建议php版本高于7.4。mysql我使用的8.0
首先用ev搜索找到mysql.exe。在终端中登录数据库

mysql -u root -p
// 密码为root
show databases;
// 删除多余的数据库
drop database qyj;
// 新建数据库
CREATE DATABASE IF NOT EXISTS qyj
DEFAULT CHARACTER SET utf8mb4
DEFAULT COLLATE utf8mb4_general_ci;

把下载的wp压缩包解压,连接好数据库
为了避免配置过程中出现权限等问题,以管理员身份运行phpstudy
在phpstudy中启动nginx,并配置网站
在这里插入图片描述
配置伪静态 try_files $uri $uri/ /index.php?$args;
在这里插入图片描述

也可以直接在nginx的配置文件中配置,之后执行nginx -s reload

 location / {index index.php index.html index.htm;try_files $uri $uri/ /index.php?$args;
}

在这里插入图片描述
在后台中修改伪地址为自己的格式
在这里插入图片描述
也可以自定义结构 /%post_id%.html

docker部署

docker可直接用docker-compose.yml

version: '3.1'services:wordpress:image: wordpressrestart: alwaysports:- 82:80environment:WORDPRESS_DB_HOST: dbWORDPRESS_DB_USER: exampleuserWORDPRESS_DB_PASSWORD: examplepassWORDPRESS_DB_NAME: exampledbvolumes:- ./wplearn/data:/var/www/htmldb:image: mysql:8.0-debianrestart: alwaysenvironment:MYSQL_DATABASE: exampledbMYSQL_USER: exampleuserMYSQL_PASSWORD: examplepassMYSQL_RANDOM_ROOT_PASSWORD: '1'volumes:- ./wplearn/db:/var/lib/mysql

补充

如果只wp开启了伪地址,但是在nginx中没有开启伪静态,遇到的情况会是,只有主页能正常访问,但是其它页面在提交的时候,会提示 “此响应不是合法的JSON响应”

http://www.lryc.cn/news/150877.html

相关文章:

  • 网站搭建最简化的引导操作 | 云服务器的购买选用 | 域名的选用 | 网站的上线和备案。
  • Spring Cloud Foundry上使用通配符模式匹配进行的安全绕过漏洞 CVE-2023-20873
  • 简述SpringMVC
  • vue竖向步骤条
  • java八股文面试[多线程]——Synchronized优化手段:锁膨胀、锁消除、锁粗化和自适应自旋锁
  • 【数据结构】队列---C语言版(详解!!!)
  • java:详解http模块request对象
  • 力扣20. 有效的括号
  • 用springboot+elasticserach7的demo,对比sider和百度ai的异同
  • Python的pymysql模块与MySQL数据库的互动:基础与实例
  • 滑动窗口实例1(长度最小的子数组)
  • EI、Scopus双检索| 2023年第四届自动化、机械与设计工程国际会议
  • 【混合时变参数系统参数估计算法】使用范数总和正则化和期望最大化的混合时变参数系统参数估计算法(Matlab代码实现)
  • vue的公共方法封装以及class高阶封装
  • OpenGL-入门-BMP像素图glReadPixels(1)实现读取屏幕中间的颜色和获取屏幕上鼠标点击位置的颜色
  • 斥资4亿,收购这家WLAN厂商,结果……
  • 【简单】2511. 最多可以摧毁的敌人城堡数目
  • Linux用一键安装包部署禅道(18.5版本)
  • 【2】openGL shader着色器分析三角形填色
  • mysql数据表Table is marked as crashed and should be repaired 的解决办法
  • 【Unity基础】1.项目搭建与视图编辑
  • C语言每日一练---Day(14)
  • 基于孔雀算法优化的BP神经网络(预测应用) - 附代码
  • 【小沐学Unity3d】3ds Max 骨骼动画制作(蒙皮修改器skin)
  • 【Latex】使用技能站:(三)使用 Vscode 配置 LaTeX
  • 诗诺克科技引领数字资产智能交易革命
  • 混合编程python与C++
  • 【单片机】单片机入门指南
  • 【PyQt】下载文件时弹出提示用户选择保存文件位置的对话框
  • 工具分享 | PDF文档解析工具PyMuPDF