当前位置: 首页 > 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响应”

相关文章:

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

实际测试,可能是docker内存限制的缘故,docker部署的会比较卡 下载 wordpress phpstudy phpstudy中伪静态配置 伪静态 正常访问 WordPress 文章页的 URL 地址为 http://asa/index.php?p123。变成伪静态就是http://asa/123.html 。 伪静态是相对真实静…...

网站搭建最简化的引导操作 | 云服务器的购买选用 | 域名的选用 | 网站的上线和备案。

本文章面向对象为网站搭建的初次操作者,主要是一些自主使用的网站,为小白做为引导的教程。 一, 网站搭建的流程 1,服务器的租赁 2,购买域名 3,对域名进行备案 4,网站内部的搭建,上线…...

Spring Cloud Foundry上使用通配符模式匹配进行的安全绕过漏洞 CVE-2023-20873

文章目录 0.前言1.参考文档2.基础介绍描述如果满足以下任一条件,应用程序就不会有太大风险:受影响的Spring产品和版本 3.解决方案3.1. 升级版本3.2. 替代方案 0.前言 背景:公司项目扫描到 Spring Cloud Foundry上使用通配符模式匹配进行的安全…...

简述SpringMVC

一、典型的Servlet JSP JavaBean UserServlet看作业务逻辑处理(Controller)User看作模型(Model)user.jsp看作渲染(View) 二、高级MVC 由DispatcherServlet对请求统一处理 三、SpringMVC MVC与Spr…...

vue竖向步骤条

效果图&#xff1a; 弹框组件代码&#xff1a; <template><el-dialog:visible.sync"dialogVisible":append-to-body"true":close-on-click-modal"false":close-on-press-escape"false"titlewidth"8.2rem"custom-c…...

java八股文面试[多线程]——Synchronized优化手段:锁膨胀、锁消除、锁粗化和自适应自旋锁

1.锁膨胀 &#xff08;就是锁升级&#xff09; 我们先来回顾一下锁膨胀对 synchronized 性能的影响&#xff0c;所谓的锁膨胀是指 synchronized 从无锁升级到偏向锁&#xff0c;再到轻量级锁&#xff0c;最后到重量级锁的过程&#xff0c;它叫锁膨胀也叫锁升级。 JDK 1.6 之前…...

【数据结构】队列---C语言版(详解!!!)

文章目录 &#x1f438;一、队列的概念及结构&#x1f344;1、队列的概念定义&#x1f344;2、动图演示 &#x1f438;二、队列的实现&#x1f438;三、链表结构队列详解&#x1f34e;创建队列的结构⭕接口1&#xff1a;定义结构体&#xff08;QNode、Queue&#xff09;⭕接口2…...

java:详解http模块request对象

文章目录 背景继承关系获取数据request获取请求行数据获取请求头数据获取请求体数据 示例&#xff1a;防盗链其他功能获取请求参数通用方式请求转发共享数据获取ServletContext 背景 在 Java 中&#xff0c;HTTP 模块的 request 对象和 response 对象分别表示客户端向服务器发…...

力扣20. 有效的括号

20. 有效的括号 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应…...

用springboot+elasticserach7的demo,对比sider和百度ai的异同

对比aigc引擎&#xff1a;sider chatgpt3.5和百度ai 提示词&#xff1a; springboot2.5&#xff0c;连接elasticsearch7的demo&#xff0c;要有基本的操作&#xff0c;用模板方法 以下是一个使用Spring Boot 2.5连接Elasticsearch 7的示例代码&#xff0c;包括基本的操作方法…...

Python的pymysql模块与MySQL数据库的互动:基础与实例

Python的pymysql模块与MySQL数据库的互动&#xff1a;基础与实例 一、连接数据库二、创建游标三、执行SQL命令四、关闭连接 在Python的世界里&#xff0c;操作MySQL数据库最常用的库就是pymysql。 pymysql是一个灵活且易于使用的库&#xff0c;它允许我们以Python的方式操作MyS…...

滑动窗口实例1(长度最小的子数组)

题目&#xff1a; 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] &#xff0c;并返回其长度。如果不存在符合条件的子数组&#xff0c;返回 0 。 示例 1&#xff1a; …...

EI、Scopus双检索| 2023年第四届自动化、机械与设计工程国际会议

会议简介 Brief Introduction 2023年第四届自动化、机械与设计工程国际会议&#xff08;SAMDE 2023&#xff09; 会议时间&#xff1a;2023年12月8 -10日 召开地点&#xff1a;中国南京 大会官网&#xff1a;www.samde.org 机械设计制造及其自动化学科在国民经济中处于极其重要…...

【混合时变参数系统参数估计算法】使用范数总和正则化和期望最大化的混合时变参数系统参数估计算法(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

vue的公共方法封装以及class高阶封装

一、Vue.use与Vue.prototype的区别和用法 1、Vue.use和Vue.prototype区别 相同点&#xff1a;都是注册插件的方式&#xff0c;没有本质区别&#xff0c;都是在vue.prototype上添加了一个方法不同点&#xff1a;vue.use适用于注册vue生态内的插件(vuex、router、elementUI)&…...

OpenGL-入门-BMP像素图glReadPixels(1)实现读取屏幕中间的颜色和获取屏幕上鼠标点击位置的颜色

glReadPixels函数用于从帧缓冲区中读取像素数据。它可以用来获取屏幕上特定位置的像素颜色值或者获取一块区域内的像素数据。下面是该函数的基本语法&#xff1a; void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *da…...

斥资4亿,收购这家WLAN厂商,结果……

晚上好&#xff0c;我的网工朋友 不少朋友可能有隐形&#xff0c;2019年的时候&#xff0c;Juniper花费4.05亿美元&#xff0c;收购WiFi初创公司Mist Systems。 Mist Systems是一家买无线产品起家的公司&#xff0c;由前思科高管创建的。主打的产品是“AI-Driven WLAN”&…...

【简单】2511. 最多可以摧毁的敌人城堡数目

原题链接&#xff1a;https://leetcode.cn/problems/maximum-enemy-forts-that-can-be-captured 2511. 最多可以摧毁的敌人城堡数目 给你一个长度为 n &#xff0c;下标从 0 开始的整数数组 forts &#xff0c;表示一些城堡。forts[i] 可以是 -1 &#xff0c;0 或者 1 &#…...

Linux用一键安装包部署禅道(18.5版本)

一、安装 禅道软件下载地址&#xff1a;禅道官方下载地址 - 禅道开源项目管理软件 - 禅道开源项目管理软件 请根据自己的需要下载对应的版本。 官方教程地址: (推荐)Linux用一键安装包 - 禅道使用手册 - 禅道开源项目管理软件 注&#xff1a;Linux 一键安装包必须直接解压到 …...

【2】openGL shader着色器分析三角形填色

源代码在下面。文档查询 > docs.gl 结果展示&#xff1a;使用自己的shader和打印错误描述 该篇主要在上一部分代码的基础上添加了自己写的shader&#xff0c;即着色器。最常用的两个着色器 vertex shader 和 fragment shader&#xff0c;即顶点着色器和片段着色器。 大概…...

半导体制造中的ProcessJob与Control Job:从定义到实战避坑指南

半导体制造中的ProcessJob与Control Job&#xff1a;从定义到实战避坑指南 在半导体制造的高精度世界里&#xff0c;每一片晶圆的流转都像一场精密编排的交响乐。而ProcessJob&#xff08;PJ&#xff09;和Control Job&#xff08;CJ&#xff09;就是这场演奏中不可或缺的指挥…...

Scarab:重构空洞骑士模组管理体验的技术实践

Scarab&#xff1a;重构空洞骑士模组管理体验的技术实践 【免费下载链接】Scarab An installer for Hollow Knight mods written in Avalonia. 项目地址: https://gitcode.com/gh_mirrors/sc/Scarab 问题溯源&#xff1a;模组管理的隐性成本与技术瓶颈 量化手动管理的效…...

Java如何实现Excel表格中间插入列

在日常Excel数据处理中&#xff0c;通常需要调整表格结构&#xff0c;例如在特定列之间插入新列。本文将介绍如何有效地使用Java代码&#xff0c;特别是在现有的A列和B列之间插入新列。Excel文件的高效处理&#xff0c;避免直接操作二进制数据带来的复杂性和错误风险&#xff0…...

Flutter项目卡在‘assembleDebug’?Gradle配置优化全攻略

1. 为什么Flutter项目会卡在assembleDebug阶段&#xff1f; 这个问题困扰过无数Flutter开发者&#xff0c;尤其是刚入门的新手。当你满怀期待地运行flutter run命令&#xff0c;结果控制台卡在Running Gradle task assembleDebug...一动不动&#xff0c;那种感觉就像等一辆永远…...

从产品质量到A/B测试:聊聊高斯分布在真实业务场景中的10个应用与常见误区

高斯分布实战手册&#xff1a;10个业务场景中的智能决策与避坑指南 当你发现某电商平台上的用户购买金额呈现"中间多、两头少"的分布时&#xff0c;当A/B测试结果出现微妙的5%转化率差异时&#xff0c;当工厂质检数据出现异常波动时——这些看似无关的业务问题背后&a…...

C++的std--ranges算法自定义比较器与等价类划分在分组操作中的运用

C20引入的std::ranges库为算法操作带来了声明式编程的革新&#xff0c;其中自定义比较器与等价类划分在分组操作中展现出强大的灵活性。通过自定义谓词控制元素分组逻辑&#xff0c;开发者能高效处理复杂数据结构&#xff0c;如数据库查询结果分类或日志事件聚合。本文将深入探…...

NetCoreServer高级特性揭秘:自定义协议、会话管理和扩展机制

NetCoreServer高级特性揭秘&#xff1a;自定义协议、会话管理和扩展机制 【免费下载链接】NetCoreServer Ultra fast and low latency asynchronous socket server & client C# .NET Core library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols and 10K c…...

ncmdumpGUI:一站式NCM音乐格式转换解决方案,轻松搞定加密音乐跨设备播放

ncmdumpGUI&#xff1a;一站式NCM音乐格式转换解决方案&#xff0c;轻松搞定加密音乐跨设备播放 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 清晨的音乐烦恼…...

探索液晶仿真负折射的奇妙世界

液晶仿真负折射在光学和材料科学领域&#xff0c;负折射现象一直是一个令人着迷的研究方向。而通过液晶来进行负折射的仿真&#xff0c;更是为这个领域带来了新的活力和可能性。 什么是负折射 通常情况下&#xff0c;当光线从一种介质进入另一种介质时&#xff0c;遵循斯涅尔定…...

别再只用DoDragDrop了!手把手教你用WPF实现一个能拖拽合并数据的自定义控件(附完整源码)

WPF高级拖拽交互实战&#xff1a;从原生API局限到自定义控件设计 在构建现代桌面应用时&#xff0c;流畅自然的拖拽交互往往能极大提升用户体验。WPF虽然提供了基础的DoDragDrop API&#xff0c;但当我们需要实现复杂场景如卡片合并、动态数据交换时&#xff0c;原生方案就显得…...