您现在的位置是:首页 > 教程 > WordPress教程WordPress教程
wordpress访问提速及防ddos攻击快速CF切换的实现方法
凡旋2023-11-08 18:41:36WordPress教程已有人查阅
导读wordpress的插件模板加载数据比较多,就算安装了wprocket这类缓存插件,做了js,css压缩,或者数据库优化。其实对网站的速度也并不会有太大提升。
最近,有客户说他网站在国外,但国内网站速度打开非常慢,因为国内国外用户访问都比较频繁,希望对他们的网站国内访问速度做个提升。他们的程序用的是wordpress。总的来说,wordpress的插件模板加载数据比较多,就算安装了wprocket这类缓存插件,做了js,css压缩,或者数据库优化。其实对网站的速度也并不会有太大提升。
经过一些简单的分析之后,我打算把他们的网站搬到cn2 gia线路的空间商,这也许是最快速的提升网站速度的办法。以下就是我的一些实战分享,以及网站遇到攻击,如何快速切换数据。
注:这台机器虽然放在国外,但百度蜘蛛抓取出现403等错误的概率几乎就没有了。
一、现网站的情况分析
网站在搬迁之前,空间放置在digitalocean,cdn走的是cloudflare。虽然digitalocean在国外是非常不错的空间商,但对国内用户来说,访问走了cloudflare,所以速度依然非常慢。
另外,分线路dns做解析,虽然也是可以,但操作会比较麻烦。所以本文不讨论。
通过无痕浏览器chrome,可以看出速度在6.35秒才 基本打开。前期渲染用了4.46秒。
另外,通过站长之家测速也可以看出。电信线路稍微快一些。但联通和移动的速度明显都超过了4秒以上。
二、网站搬迁
关于空间商的选择,其实只要选对稳定的空间,好的线路。基本上都是可以的。我现在选的是搬瓦工的cn2 gia ecommerce。cn2 gia大的优势就是国内三网访问都非常快。而这个空间商也是速度最稳定的。我现在一季度49.99美元,其实相当于一个月16美元。
SSD: 20 GB RAID-10
RAM: 1 GB
CPU: 2x Intel Xeon
Transfer: 1000 GB/mo
这个可以根据每个人的情况不同,选择不同的主机。但推荐大家在一开始流量不是非常大的情况下,不用买特别好的主机,后续可以再扩容。
1、操作系统选择
我用的是ubuntu 20.04。php 7.4 + nginx + mysql。为什么选这个呢。因为php 7.4的速度比php 7.2的快30%。
2、命令行
为什么不用宝塔?因为前段时间宝塔刚出了一个大漏洞。而且网站这一块,本人感觉还是尽量少用别的第三方工具。另外,搭建的VPS也可以尽量的干净整洁。少一些外部程序。
以下命令行,建立在ubuntu 20.04的基础上。只要按着命令。基本都不会错。
ssh root@... -p 端口号
上面星号是IP地址。-p 是指定端口。因为搬瓦工的默认ssh端口不是22,所以这里要指定。
第一步:安装nginx
第三步:安装mysql
接着 基本选y。一个是移除匿名用户,一个是禁止数据库root远程登录,最后是移除测试数据库。
最后选y。脚本立即生效。
第四步:安装php模块
sudo systemctl reload php7.4-fpm nginx(重启并加载配置)
第五步:把网站数据搬过来
因为我的网站是wordpress,可能你们的网站是别的程序写的,所以内容不一样。这里就不写了。另外,记得做/etc/nginx/sites-enable/目录下面的nginx.conf
第六步:配置安装ssl
ssl我用的是let’s encrypt。
这里要注意一下,先要把dns指向当前VPS,否则配置会不成功,如果是用Cloudflare。要关闭CDN。
看到最后有一句。Congratulations! Your certificate and chain have been saved at:就说明安装成功了。
这个证书有效时间是90天,但certbot会每天运行两个systemd计时器,来检查证书有效性,并自动续订证书。你要检查计时器是否有效。
直接用国内电 问,网站打开时间有了明显的提升。对比之前的速度大概提升了2-3倍。并且这还是晚上的速度。晚上的访问速度一点没受影响。
除了标红的一个地址dns解析还没生效,其余已经生效的IP速度明显都在2秒以内打开。
四、防DDOS攻击及cloudflare快速切换攻防
这里我推荐使用cloudflare本配置你的网站。默认情况下,不开启CDN。也就是域名直接指向IP。但如果在遇到ddos等攻击的时候,建议立即开启cloudflare的代理,并把IP指向你备份的克隆空间。因为IP做了隐藏,而攻击者的大量攻击数据也会被Cloudflare过滤掉,所以只要响应及时,就可以在短短几分钟内恢复你的网站。
另外,可以通过access.log访问日志来定位你的攻击来源IP。并在cloudflare的防火墙中,直接过滤可疑IP。比如用阻止访问,或者验证码的方式来定位攻击者。而且cf的选项还可以屏蔽整个国家。
另外,开启under attack模式。可有效阻止中小型攻击。
经过一些简单的分析之后,我打算把他们的网站搬到cn2 gia线路的空间商,这也许是最快速的提升网站速度的办法。以下就是我的一些实战分享,以及网站遇到攻击,如何快速切换数据。
注:这台机器虽然放在国外,但百度蜘蛛抓取出现403等错误的概率几乎就没有了。
一、现网站的情况分析
网站在搬迁之前,空间放置在digitalocean,cdn走的是cloudflare。虽然digitalocean在国外是非常不错的空间商,但对国内用户来说,访问走了cloudflare,所以速度依然非常慢。
另外,分线路dns做解析,虽然也是可以,但操作会比较麻烦。所以本文不讨论。
通过无痕浏览器chrome,可以看出速度在6.35秒才 基本打开。前期渲染用了4.46秒。
另外,通过站长之家测速也可以看出。电信线路稍微快一些。但联通和移动的速度明显都超过了4秒以上。
二、网站搬迁
关于空间商的选择,其实只要选对稳定的空间,好的线路。基本上都是可以的。我现在选的是搬瓦工的cn2 gia ecommerce。cn2 gia大的优势就是国内三网访问都非常快。而这个空间商也是速度最稳定的。我现在一季度49.99美元,其实相当于一个月16美元。
SSD: 20 GB RAID-10
RAM: 1 GB
CPU: 2x Intel Xeon
Transfer: 1000 GB/mo
这个可以根据每个人的情况不同,选择不同的主机。但推荐大家在一开始流量不是非常大的情况下,不用买特别好的主机,后续可以再扩容。
1、操作系统选择
我用的是ubuntu 20.04。php 7.4 + nginx + mysql。为什么选这个呢。因为php 7.4的速度比php 7.2的快30%。
2、命令行
为什么不用宝塔?因为前段时间宝塔刚出了一个大漏洞。而且网站这一块,本人感觉还是尽量少用别的第三方工具。另外,搭建的VPS也可以尽量的干净整洁。少一些外部程序。
以下命令行,建立在ubuntu 20.04的基础上。只要按着命令。基本都不会错。
ssh root@... -p 端口号
上面星号是IP地址。-p 是指定端口。因为搬瓦工的默认ssh端口不是22,所以这里要指定。
第一步:安装nginx
sudo apt update
sudo apt install nginx
第二步:开启防火墙
sudo ufw app list
sudo ufw allow ‘OpenSSH’
sudo ufw allow ‘Nginx HTTPS’
sudo ufw allow ‘Nginx HTTP’
sudo ufw enable — 这条命令打完的时候,会提示可能会中断ssh 连接。直接输入y回车。第三步:安装mysql
sudo apt install mysql-server
sudo mysql_secure_installation (此步骤可选,这是一个安全脚本)。
输入y回车,选择2,较强密码,输入新密码,这个密码是mysql 的root密码。接着 基本选y。一个是移除匿名用户,一个是禁止数据库root远程登录,最后是移除测试数据库。
最后选y。脚本立即生效。
第四步:安装php模块
sudo apt install php-imagick php7.4-fpm php7.4-mbstring php7.4-bcmath php7.4-xml php7.4-mysql php7.4-common php7.4-gd php7.4-json php7.4-cli php7.4-curl php7.4-zip
此处就是一条命令,整个代码复制就可以。这个基本上包含了wordpress能用上的所有模块。sudo systemctl reload php7.4-fpm nginx(重启并加载配置)
第五步:把网站数据搬过来
因为我的网站是wordpress,可能你们的网站是别的程序写的,所以内容不一样。这里就不写了。另外,记得做/etc/nginx/sites-enable/目录下面的nginx.conf
server {
listen 80;
server_name your_domain .your_domain;
root /var/ /your_domain;
index index.html index.htm index.php;location / {
try_files $uri $uri/ =404;}location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}location ~ /.ht {
deny all;}
替换配置文件中的your_domain为你的域名****.com第六步:配置安装ssl
ssl我用的是let’s encrypt。
sudo apt install certbot python3-certbot-nginx
sudo certbot –nginx -d example.com -d .example.com
替换example.com为你自己网站的域名。如果是多个子域名。就自己添加。这里要注意一下,先要把dns指向当前VPS,否则配置会不成功,如果是用Cloudflare。要关闭CDN。
看到最后有一句。Congratulations! Your certificate and chain have been saved at:就说明安装成功了。
这个证书有效时间是90天,但certbot会每天运行两个systemd计时器,来检查证书有效性,并自动续订证书。你要检查计时器是否有效。
sudo systemctl status certbot.timer
输出结果如下,就说明正常。
● certbot.timer - Run certbot twice daily
Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)
Active: active (waiting) since Mon 2020-05-04 20:04:36 UTC; 2 weeks 1 days ago
Trigger: Thu 2020-05-21 05:22:32 UTC; 9h left
Triggers: ● certbot.service
三、测试新网站网速直接用国内电 问,网站打开时间有了明显的提升。对比之前的速度大概提升了2-3倍。并且这还是晚上的速度。晚上的访问速度一点没受影响。
除了标红的一个地址dns解析还没生效,其余已经生效的IP速度明显都在2秒以内打开。
四、防DDOS攻击及cloudflare快速切换攻防
这里我推荐使用cloudflare本配置你的网站。默认情况下,不开启CDN。也就是域名直接指向IP。但如果在遇到ddos等攻击的时候,建议立即开启cloudflare的代理,并把IP指向你备份的克隆空间。因为IP做了隐藏,而攻击者的大量攻击数据也会被Cloudflare过滤掉,所以只要响应及时,就可以在短短几分钟内恢复你的网站。
另外,可以通过access.log访问日志来定位你的攻击来源IP。并在cloudflare的防火墙中,直接过滤可疑IP。比如用阻止访问,或者验证码的方式来定位攻击者。而且cf的选项还可以屏蔽整个国家。
另外,开启under attack模式。可有效阻止中小型攻击。
本文标签:
很赞哦! ()
相关文章
随机图文
-
wordpress为什么要升级
世界上流行的内容管理系统(CMS)为全球数百万的网站提供了强大的支持。作为一个CMS,它改变了人们在互联网上构建内容和维护内容的方式。 -
wordpress网站为图片添加水印的方法
wordpress网站如何为图片添加水印:1、打开你的wordpress网站后台,并登陆。点击插件-安装插件,进入安装搜索界面 -
wordpress多站点robots怎么写
稍微接触过SEO的站长朋友都应该知道 robots协议(也称为爬虫协议、爬虫规则、机器人协议等),也就是通常添加到网站根目录的robots.txt 文件 -
虚拟机一个数据库怎么安装两个Wordpress
一个数据库同时安装两个Wordpress怎么办?我们安装WordPress时,数据库表头默认是WP_;如果继续做第二个WordPress网站,数据库表头肯定不能再是WP_了。
留言与评论 (共有 条评论) |