全球主机交流论坛

标题: WordPress 真正全站静态教程【多图慎入】提速+防CC [打印本页]

作者: lop    时间: 2019-9-6 13:16
标题: WordPress 真正全站静态教程【多图慎入】提速+防CC
前几日发了一篇热闹网全站静态化的帖子。看到不少小伙伴对静态化非常感兴趣。同时也相信玩Wordpress的小伙伴都想优化自己网站的加载速度。降低Wordpress对系统资源的开销。所以特地写一篇关于本站静态化的方法。


当然Wordpress有很多的优化速度的方法。



等等等等,很多很多方面都会直接影响你Wordpress站点的打开速度。而我们今天带来的教程将从整站完全静态的角度帮助大家解决加载慢的问题。

原理:

这里简单的讲一下。Wordpress 是采用PHP+MySQL的架构完成网站页面呈现的。客户端浏览器访问网站页面是首先通过PHP(超文本预处理解释性的语言)调用MySQL中的数据反馈给你最终浏览器看到的页面的。

而我们今天将我们的Wordpress完全静态化,也就是生成html网页。不再使用PHP+MySQL环境。

副作用:

由于没有了PHP和MySQL的环境,那么我们的网站从动态网站就变成了静态网站,所以以下两个功能将不能再使用:

WordPress 自带的搜索功能
WordPress 自带的评论功能
当然,以上两个功能我们也可以通过其他方法实现,这里不再具体描述。


教程开始:

1.Wordpress 后台搜索 Really Static 插件,安装并启用该插件。


2.进入到插件页面,并点击“goto the 1-2-3 quicksetup again”进入快速设置


3. 选择 “running really-static in livemode”
这里分为测试模式和生产模式,我们直接选择livemode就可以了。


4.设置静态文件生成目录。参见下图:

work with local filesystem
internal filepath from to cachedfiles :
填写你服务器网站的根目录(注意斜杠)

After this,please say where visitors can view this files:
填写你Wordpress 的访问地址(如果你是https就写https,是http就写http,注意斜杠)


5.检查缓存读写权限

如果你上一步中的路径填写没毛病,这里应该是三个绿色的框框。就表示通过了。直接点击“Next”
如果有红色的框框,说明上一步的路径设置有误(目录权限不需要特殊更改)


6.点击“start generating files… this will take some time”开始生成静态网页


7.如下图,显示“Ready”之后,即表示生成成功
这取决于你文章数量的多少,文章多的话时间长一点。


8.检查是否真正生成成功

通过宝塔面板进入网站根目录,查看是否生成了一堆html网页及目录。
如果你有分类,那么根目录下同样会生成相应的文件夹,文件夹内包含该目录的页面html(这里演示网站仅有一个主页,所以仅生成了一个index.html)


至此,您的网站已经完全静态化了。但是您还没有真正用起来。继续阅读以下的使用方法。

推荐使用方法:

一、静态文件和动态文件放在同一个服务器

二、后端生成,前端全静态

第一种使用方法详细说明
很简单,就是我们在宝塔(或其他Nginx、Apache)中把默认网页又index.php更改为index.html即可。

访客访问您的域名,自动打开index.html这个静态版的网页。而其中内联也全都是静态化后的内联。

访客正常访问将不会经由PHP及MySQL处理。实现网站加速、减少PHP&MySQL对系统资源的消耗。

作为管理员,你正常管理网站更新文章,可以通过后台页面进入管理后台。但是由于我们服务器依然存在PHP和MySQL环境。针对Wordpress的一些攻击(cc攻击等)依然会挑选你网站的动态页面进行攻击。

所以此使用方法,仅实现了加速,并没有实现真正的防攻击。

第二种使用方法详细说明
目前本站采用的就是这种方法,我们将网站后端以及提供访客的前端分离。
在另一台服务器上(也可以是家里的电脑)架设Wordpress,并生成静态网页。
然后通过rsync等工具,将静态文件全部自动同步至我们前端的VPS中。
这样我们前端的VPS只需安装Nginx即可。

备注1:同步的时候过滤*.php文件,其他目录以及文件正常同步(保证js、css、图片的完整性)

备注2:后端服务器需手动指定域名解析至后端IP。否则生成静态文件的时候会出错。

至此,全部教程结束。任何不懂的问题欢迎留言讨论。也可以找Lop咨询~

教程及演示地址   https://www.izcv.com/2422.html
作者: hxuf    时间: 2019-9-6 13:17
天天个位数IP完全用不上
作者: 破论坛早晚药丸    时间: 2019-9-6 13:19
如果装逼犯法,你已经坐穿了
作者: liuhaidong    时间: 2019-9-6 13:23
先 mark   再仔细看 哈哈
作者: 破论坛早晚药丸    时间: 2019-9-6 13:25
在这个论坛,我只欣赏lop,因为lop装的逼和别人不一样,lop装的逼刚刚好,湿润,圆滑,有弹性有深度,有湿度,不过分,不浮夸,不做作,不高调,不张扬,内涵中不缺出色的文采,正所谓这才是逼一界里的最高境界,lop才是真正的逼神,完美,尽管lop装的很华丽,但是少了那么一丝朴实,没有给你们焕然一新的感觉,如果再加入那么一丝朴实的话语就无人能挡了,我希望在国际装逼总决赛的舞台上,你们看到焕然一新的lop,好吗?所以,请你们给lop Yes !!!!

作者: loveqianool    时间: 2019-9-6 13:26
收藏.
作者: 我很忙    时间: 2019-9-6 13:28
意义不大,wp站就算流量大,未必是因为数据量大,数据量大(百万级以上)如果用WP那就是脑袋进水了
作者: liuhaidong    时间: 2019-9-6 13:29
静态html 相对简单

没有采用的原因还是评论插件

Hashover  还是不那么完善

如果再完善些 就准备上了


作者: 落叶随风    时间: 2019-9-6 13:29
Super Static Cache 这个插件更不错,生成的html是单独在一个文件夹里面,然后跟着做伪静态。看着没上面那个插件那么乱。
作者: vpsgh    时间: 2019-9-6 13:29
在这个论坛,我只欣赏lop,因为lop装的逼和别人不一样,lop装的逼刚刚好,湿润,圆滑,有弹性有深度,有湿度,不过分,不浮夸,不做作,不高调,不张扬,内涵中不缺出色的文采,正所谓这才是逼一界里的最高境界,lop才是真正的逼神,完美,尽管lop装的很华丽,但是少了那么一丝朴实,没有给你们焕然一新的感觉,如果再加入那么一丝朴实的话语就无人能挡了,我希望在国际装逼总决赛的舞台上,你们看到焕然一新的lop,好吗?所以,请你们给lop Yes !!!!
作者: upo    时间: 2019-9-6 13:29
提示: 作者被禁止或删除 内容自动屏蔽
作者: 哈登    时间: 2019-9-6 13:30
感谢大佬分享,已收藏,不过大佬你的演示站速度一般啊。另外有个问题,如果在本地搭建wordpress,生成静态文件再上传到网站目录,会不会因为路径出错?因为本地绝对路径和在网站空间绑定域名后的绝对路径肯定不一样的。
作者: lop    时间: 2019-9-6 13:32
哈登 发表于 2019-9-6 13:30
感谢大佬分享,已收藏,不过大佬你的演示站速度一般啊。另外有个问题,如果在本地搭建wordpress,生成静态 ...

嗯,演示站速度是因为:
1. 我服务器在ovh加拿大。所以慢(因为ovh不怕D,还便宜)
2. 我启用了自建评论系统,加载这个东西也拖慢了速度。
总体速度我自己还算满意。

如果按照教程设置,路径都是绝对路径~ 直接同步到前端服务器没问题得。(记得过滤掉*.php再同步)
作者: 飘云    时间: 2019-9-6 13:34
mark下了。
作者: 水果大笨蛋    时间: 2019-9-6 13:35
收藏了
作者: lop    时间: 2019-9-6 13:37
落叶随风 发表于 2019-9-6 13:29
Super Static Cache 这个插件更不错,生成的html是单独在一个文件夹里面,然后跟着做伪静态。看着没上面那 ...

嗯,我尝试过 Super Static Cache 不过好像我的目录页有些生成不成功。。不知为何,可能是因为我的模板。所以就放弃了。另外 Really static也可以生成到其他目录得
作者: 002    时间: 2019-9-6 13:40
用这种方法..怎么不同步到github 上去? 在套个CF 不就完整了.. VPS 也省了..只要家里的同步上去就好了.
作者: 风为裳    时间: 2019-9-6 13:50
5.2.2版本用不了这个静态插件
作者: lop    时间: 2019-9-6 13:51
风为裳 发表于 2019-9-6 13:50
5.2.2版本用不了这个静态插件

我是5.2.3  不是WP版本得问题。是php版本得问题
作者: 风为裳    时间: 2019-9-6 13:54
lop 发表于 2019-9-6 13:51
我是5.2.3  不是WP版本得问题。是php版本得问题

确实…
把7.2切换到5.6就可以用了。
作者: ryan0812    时间: 2019-9-6 14:20
在这个论坛,我只欣赏lop,因为lop装的逼和别人不一样,lop装的逼刚刚好,湿润,圆滑,有弹性有深度,有湿度,不过分,不浮夸,不做作,不高调,不张扬,内涵中不缺出色的文采,正所谓这才是逼一界里的最高境界,lop才是真正的逼神,完美,尽管lop装的很华丽,但是少了那么一丝朴实,没有给你们焕然一新的感觉,如果再加入那么一丝朴实的话语就无人能挡了,我希望在国际装逼总决赛的舞台上,你们看到焕然一新的lop,好吗?所以,请你们给lop Yes !!!!
作者: 落叶随风    时间: 2019-9-6 14:22
lop 发表于 2019-9-6 13:37
嗯,我尝试过 Super Static Cache 不过好像我的目录页有些生成不成功。。不知为何,可能是因为我的模板。 ...

这个插件生成html时有延迟,不是实时生成的
作者: njav    时间: 2019-9-6 14:25
100ip內 一天,不用煩這些事
作者: up93    时间: 2019-9-6 14:29
typecho有这种插件么?
作者: jpfree    时间: 2019-9-6 14:34
002 发表于 2019-9-6 13:40
用这种方法..怎么不同步到github 上去? 在套个CF 不就完整了.. VPS 也省了..只要家里的同步上去就好了. ...

这个如何搞啊?
作者: bios12567496    时间: 2019-9-6 14:45
mark战略性
作者: ninqq    时间: 2019-9-6 14:47
本帖最后由 ninqq 于 2019-9-6 14:49 编辑

你这太麻烦了

既然放弃
WordPress 自带的搜索功能
WordPress 自带的评论功能

那直接nginx全站反代 把不同页面配置好缓存过期时间不就好了

文章有更新自动更新清除缓存

多简单的事情 弄那么麻烦干什么
作者: aoki    时间: 2019-9-6 15:13
ninqq 发表于 2019-9-6 14:47
你这太麻烦了

既然放弃

看了这么多 这个回复才是精髓
作者: loneking    时间: 2019-9-6 15:25
ninqq 发表于 2019-9-6 14:47
你这太麻烦了

既然放弃

+1 我就这样。
作者: 圼逍遥    时间: 2019-9-6 15:27
先mark再说
作者: lop    时间: 2019-9-6 15:30
ninqq 发表于 2019-9-6 14:47
你这太麻烦了

既然放弃

可能我对反代有点误解~

1. 源站不是全静态咋缓存。。*_*
2. 即使反代,后端有PHP和MYSQL 还是不抗CC啊。。
作者: Kimiato    时间: 2019-9-6 15:30
Mark一下
作者: 风影OvO    时间: 2019-9-6 15:44
这个帖子不火,对不起,lop,我还是要说出来,你有很大的一个责任,你听我的,你要多准备几个小鸡
小鸡是要备24个甚至30个的,要是有几百万个mjj说这个博客我特别爱看,我要一直按F5刷你告诉我你怎么办?现在不是有没有人来看的问题,是观众反应,你知道吗我今天转了一天没有一个观众跟我说“卧槽这博客打开好快",都是说还不是秒开,你这个博客很好看,我看了,不够快,不够极速。你这样,你明天必须给我做出二十四个小鸡均衡负载,我不管你的ip有多少个,听我的!全部做完!全部做完!我不要你觉得,我要我觉得,我建议你依然还是听我的,一个人说了算,这件事情不需要讨论讨论,听我的。(明学满分在线教学)
作者: ninqq    时间: 2019-9-6 15:50
lop 发表于 2019-9-6 15:30
可能我对反代有点误解~

1. 源站不是全静态咋缓存。。*_*


nginx 反代缓存下来 只要缓存不过期 就算源站挂了 照样可以访问
缓存时间可以自己根据需求自由配置
作者: lop    时间: 2019-9-6 15:52
风影OvO 发表于 2019-9-6 15:44
这个帖子不火,对不起,lop,我还是要说出来,你有很大的一个责任,你听我的,你要多准备几个小鸡
小鸡是要 ...

我我我……
一时语塞……
嘶,我倒吸一口冷气……
手心都攥出汗了……

作者: 风影OvO    时间: 2019-9-6 16:05
lop 发表于 2019-9-6 15:52
我我我……
一时语塞……
嘶,我倒吸一口冷气……

哈哈哈 淡定大佬!
我只是一个最近沉迷明学的小白
那些都是瞎编的

作者: 若相伴丶必相随    时间: 2019-9-6 16:08
mark看看
作者: zhc670    时间: 2019-9-6 17:06
把静态后的玩意同步回去
有意思
作者: paydot    时间: 2019-9-6 17:54
提示: 作者被禁止或删除 内容自动屏蔽
作者: cquyf    时间: 2019-9-6 17:58
大佬就是牛逼啊,
作者: 赵小龙    时间: 2019-9-6 18:04
日IP百位 也用不上
作者: 一路上有梨    时间: 2019-9-6 23:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: zwstar    时间: 2019-9-7 00:00
帖子已mark。。。
这也是国内大型门户网站,包括GOV网站的常见策略,只是为了安全性,这些网站的架构更加复杂一些。

结合我工作中的实践,这些网站一般采用的是后端生成页面,推送到中间件,再由中间件推送到前端服务器上。前端服务器可以是OSS。
当然在前端服务器的前面还有一个反向代理,这里做的就比较麻烦些,涉及搜索、交互这些功能是专门反代到另外的机器上的,即便是目录或文件名。
作者: xuanxuan    时间: 2019-9-13 23:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: flash    时间: 2019-9-14 06:39
听说还能防cc,所以偶过来看看是否有真货,但是结果令人 。。
还听说可以不用my,吓得一大跳,这都能省,只想说一下,不要把wp想得如此容易,想优化不是这个方向,最简单还是动静分离加个缓存前端吧,不推荐wp super那个,最起码也要用个wp rocket或borlabs之类,至少减少my用个redis,有条件 。。先得有条件就再读写也分离吧,这才算是正确方向。
作者: lop    时间: 2019-9-14 08:44
flash 发表于 2019-9-14 06:39
听说还能防cc,所以偶过来看看是否有真货,但是结果令人 。。
还听说可以不用my,吓得一大跳,这都能省,只 ...

大佬。说了这么多。
我等你教程!
等教程出来了。允许你继续保持优越感~

作者: lop    时间: 2019-9-14 08:46
xuanxuan 发表于 2019-9-13 23:40
屁用没有,还不如实实在在用cdn

大佬的量。我看过了。不如前几天另一位大佬的1/10
可能是宝塔防火墙把你阻止了
作者: dc.s    时间: 2019-9-14 08:55
收藏下
作者: xuanxuan    时间: 2019-9-14 09:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: ljm4216    时间: 2019-9-14 12:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: jindom    时间: 2019-9-14 12:20

作者: citywar    时间: 2019-9-14 13:09
如果真到需要到全站静态这地步  为什么还用WP
作者: 夜不眠    时间: 2019-9-14 14:12
多少数据或pv需要静态




欢迎光临 全球主机交流论坛 (https://hostloc-workers.ikyomon.com/) Powered by Discuz! X3.4