
您的网站是否受到和 *** 流量大的困扰?在cookie往往是罪魁祸首的情况下,一个有效的解决方案是使用无cookie域名。
虽然cookie是我们在线体验的主要基石之一,但它们并不总是像其名称所暗示的那样美味。除了涉及第三方cookie的隐私和外,自动附着在你的网站图像和其他静态内容上的cookie会对页面性能产生严重影响。
值得庆幸的是,通过使用无cookie的域名,有可能减去死的重量(在这种情况下,死的cookie)。在这个完整的指南中,我们将回顾无cookie域名的基础知识,为什么它们如此有用,以及你如何配置你的WordPress网站来使用它们。
但是,首先,让我们把手伸进数字饼干罐,仔细看看域名如何使用cookies–无论好坏。
无Cookie域是指网站中不向用户的浏览器发送Cookie的部分。
但为什么不一直发送cookie呢?毕竟,给用户提供尽可能多的cookies不是很礼貌吗?
不一定。当我们谈论无cookie域名时,我们当然是指HTTP cookie。与我们最喜欢的烘烤食品不同,HTTP cookie是网站发送给用户浏览器的小数据包。虽然不是很好吃,但它们对于让网站在用户下次访问时 “记住 “他们是非常有用的。
然而,就像实际的cookies一样,你不希望提供太多的HTTP cookies。正如我们很快就会看到的,访问者喜欢一些cookie–但任何超过他们需要的cookie都会使他们感到迟钝和臃肿。
HTTP cookies在 *** 上随处可见。
每当你访问一个网站时,该网站很有可能会要求你在浏览器中存储cookies。除了有关网站本身和你所访问的页面的信息外,cookies还包括一个与你和你的浏览器相关的个人标识符。这个标识符允许网站 “记住 “你是否已经访问过该页面。
让我们仔细看看这个cookie交换是如何进行的(扰流警报:没有涉及任何迷人的柳条篮子或女童子军)。

网站如何向用户的 *** 浏览器发送HTTP cookie
如上图所示,交换可分为三个步骤:
也有不同的cookie用于不同的目的。在上面的例子中,从事会话管理的 *** 服务器维护你的登录或购物车项目–换句话说,你在他们网站上的个人会话。同样,cookies也可以用来提供个性化的体验,如显示最近的订单、浏览过的项目,甚至是有针对性的广告。
虽然无论你走到哪里,都能得到cookie听起来很好,但这并不是它所描述的一切。正如我们在下一节中所看到的,一个网站实际上有可能提供太多的cookies–其中一些是许多人宁愿不 “吃 “的。
尽管个人识别符是HTTP cookie的一个非常重要的用途,但它们并不是唯一的用途。事实上,cookies可用于广泛的目的,以提供更加个性化的 *** 体验,提供有针对性的内容,以及更多。

如何利用cookies来侵犯隐私
我们已经介绍了网站和浏览器如何交换HTTP cookie来 “记住 “你。虽然这对维持登录会话和显示购物车项目很有帮助,但cookies也可用于更邪恶(或直接令人厌恶)的目的。
下面是一些最常见的域名使用HTTP cookie的方式:
值得庆幸的是,大多数HTTP cookies是用于会话管理和个性化的。然而,即使是最无辜的cookies也会引起问题。
到目前为止,我们已经探讨了一个页面发送一个cookie的想法。在现实中,一个页面通常会发送多个cookie,通常每个页面元素都有一个cookie–HTML、图像文件,等等。虽然其中一些cookie对于会话管理和个性化是必要的,但许多cookie并不是。
因此,有可能发送太多的cookies,这可能会导致一些问题。我们将在下一节中讨论这些问题。
与大多数文件不同,网页是各种元素的 *** ,这些元素赋予网页以形式、结构和意义。这些元素中的每一个都可以有自己的饼干。
我们可能以.pdf或.docx格式查看的常规文件可能看起来是文本和图像的单一 “组合”,而网页是由许多独立的小部分组成的。

HTML、CSS和JavaScript是大多数网站的主要组成部分
例如,当你请求一个网页时,你实际上是在请求独立的页面组件,如HTML(结构)、CSS(样式/格式)、JavaScript(交互性)和媒体,如图像。因此,当你的浏览器收到一个网页时,它实际上是在接收和重新组合这些组件,以便在你的屏幕上显示完整的页面。
如果 *** 服务器也在发送cookie,那么在这个过程中,它可能会随每一个元素自动发送一个cookie。对于一个只有几张图片的简单网页来说,这可能并不意味着什么,但是如果一个网页有几十个甚至几百个不同的组件,并且为每一个组件发送一个cookie,那么它很快就会变得不堪重负。
就像在现实生活中吃了太多的cookie一样,发送和接收太多的HTTP cookie会导致性能低下。由于发送额外的数据需要额外的时间和资源,与每个元素一起发送cookie会很容易消耗大量的 *** 资源。
值得庆幸的是,发送太多cookies的解决方案使用了一个现实世界的比喻。为了提高性能,只需吃(读:发送)更少的cookies。
但是,我们应该放弃哪些cookie呢?在大多数情况下,更好的做法是删除页面上任何静态元素的cookies。
静态元素是那些你不会期望随着用户行为而改变的元素,如静态图像或静态文件,如CSS文件。因此,它们不需要附加cookies,这使得删除它们成为减少 *** 负载和提高性能的更佳方式之一。
当然,删除cookies并不像取消勾选 “cookies “复选框那么简单。
相反, *** 服务器使用无cookie域,将无cookie的静态内容与有cookie的内容分开发布。无cookie域通常是一个单独的域(如子域或FQDN,如 “static.wbolt.com“或 “wbolt.com“)。

显示子域的URL结构
值得庆幸的是,当你使用正确的工具时,使用无cookie域名并不难–而且设置子域并不是唯一的 *** 。
但在我们动手之前,让我们探讨一下使用无cookie域名的一些更大好处,以及这对你的网站(和你的预算)会产生多大的影响。
删除额外的cookies听起来可能是一个小动作–坦率地说,它就是这样。
然而,这个小动作带来了一些相当大的好处。通过只发送你需要的cookies,你将减轻你的 *** 流量,并获得以下许多其他好处–其中一些与性能完全无关。
使用无cookie域名的大多数好处来自于减少不必要的cookie流量带来的 *** 负荷。
正如我们前面所提到的,向你的访问者发送页面元素需要一定量的 *** 资源。除了元素本身之外,每个元素(甚至是同一元素的多个部分)都会与包含路由信息的响应头以及其他元素(如cookie)一起发送。
即使cookie是相对较小的数据文件,但在每个页面请求中都要发送大量的cookie,很快就会累加起来。结果,用户不得不等待更长的时间来加载页面,因为你可怜的虚拟主机已经不堪重负(结果就是超出预算)。
然而,如果你使用无cookie的域名,你就会消除因发送不必要的cookie而造成的大部分麻烦。
正如你可能想象的那样,通过减少cookies来减少 *** 负荷,对加载时间和网站性能有很大影响。
由于每个页面的点击都是对 *** 服务器的单独请求,用户可能会发现自己只是为了执行基本的导航(主页>关于我们>商店,等等)而长时间等待。虽然页面元素和cookies在之一次加载后可能会被缓存和重用,但如果页面改变或用户更深入地进入你的网站,这仍然会带来问题。
通过减少不必要的流量来提高网站性能,你的网站也可能看到有关的好处,当然,还有客户和。
客户体验是最明显的好处:随着加载时间的缩短,用户可以更快地访问他们想要的内容。因此,他们将更有可能探索你的网站(以及你的产品或服务),更不可能在沮丧中点击离开。
同样的好处也适用于SEO。虽然页面加载时间并不直接影响搜索引擎,但你的跳出率–点击离开你的页面的访问者的百分比–肯定会影响。

页面加载速度
根据Unbounce的一份报告,如果不得不等待四秒或更长时间来加载一个页面,就会放弃。
这意味着,即使删除不必要的cookies只提高了你的一秒钟,你仍然会看到跳出的大量减少,并因此提高了你的搜索排名。
*** 流量最终要花钱买虚拟主机费。
这意味着,如果你发送的cookie超过你的需要,你也要支付更多的 *** 托管费。如果cookie影响了页面性能,损失就会翻倍。除了支付更多的流量,你还需要支付更多的费用,以获得相同的回报,因为缓慢的加载时间导致的跳出率增加。
最后,虽然现在可能没有直接的好处,但提供无cookie的内容将帮助你为做更好的准备。
鉴于隐私要求,如,对cookie的争议在增加,许多主要的搜索引擎和技术公司正在寻找 *** 来完全消除cookie。虽然Cookie可能在一段时间内不会消失,但它们最终很可能会消失–你越早做好准备,过渡就会越容易。
正如我们前面所介绍的,无cookie域名的一般想法是在不传递cookie的情况下传递静态内容。虽然创建一个独立的静态域名或子域是最直接的 *** ,但通过CDN和一些WordPress的技巧也可以做到。
用这种 *** ,你将创建一个单独的域名来托管你的网站的静态组件,如图片和CSS。
虽然你可以注册一个完全独立的域名,但通常在你现有的域名上创建一个子域名更容易,也更有成本效益。大多数无cookie的域名只是使用一个静态前缀(例如,”static.yourdomain.com“)作为其子域。
请注意,这只有在你的域名的 “www “版本(例如,”www.yourdomain.com“)是你的网站中的根域时才会起作用。
为了使子域不被煮熟,你通常必须找到并使用特殊代码直接编辑你的。然而,正如我们稍后所见,简单地重新配置你的WordPress网站或使用一个插件要容易得多。
无论你如何配置你的无cookie子域,你都可以上传静态组件,如你的CSS组件、图像、文本和JavaScript。
使用内容交付 *** 或CDN是使用无cookie域名的一种极其方便的方式。
在这里,你不必创建单独的子域和编辑配置文件,你可以简单地告诉你的CDN忽略并从你的静态组件的响应头中剥离cookies。这听起来可能有点复杂,但它实际上是许多CDN的一个简单功能。
请注意,不是每个CDN都提供这种功能。因此,除非你已经在使用一个允许你禁用cookies的CDN,否则一般来说,改变你网站的配置会更好。
如果你使用的是WordPress,你很幸运:要指定一个无cookie的域名,只需要更新你的文件中的几行。跳到下一节(配置WordPress以使用无Cookie的域名)以获得完整的说明。
另一个简单的WordPress选项是使用一个插件来创建WordPress网站的静态版本。
一个常用的插件是(字面意思是 “WordPress-to-Static”)。安装该插件后,只需在你的WordPress仪表板上打开它,并配置设置,将你的网站导出为静态版本:

WP2Static
如上所述,WordPress提供了一个简单的 *** 来实现无cookie域名。这个过程可以归结为几个简单的步骤:
Kinsta客户可以使用MyKinsta仪表盘来完成其中的一些任务。许多其他的WordPress用户也可以在cPanel中做同样的事情。
我们将在下文中介绍这两点:
Kinsta的客户可以在MyKinsta仪表板上将子域(或完全不同的域)与WordPress实例联系起来。许多客户也会使用MyKinsta的工具来为这些域名配置DNS。
在这个例子中,我们将为我们已经在www.example.com上运行的网站创建一个无cookie的域名static.example.com。
第1步:在MyKinsta中创建一个子域
如果你最初在Kinsta建立你的WordPress网站时使用了域名的通配符选项(比如:*.example.com),那么你已经被设置为支持任何子域名称。如果不是,你可以像这样为无cookie的内容添加新的域名。

在MyKinsta内添加一个子域
在下面的对话框中:

指定MyKinsta内的新子域
接下来,你的新静态域名将需要一个DNS记录,指向你现有的网站。如果你通过第三方供应商管理你的域名的DNS,你将使用他们的工具来完成。如果你的DNS是由我们提供的,在MyKinsta中这样配置你的新域名。
我们建议将你的新子域作为CNAME记录添加到DNS,这样你就可以只依靠二级域名来与IP地址关联。下面,我们正在为static添加一个CNAME记录,指向example.com:

在MyKinsta DNS管理中创建一个CNAME记录。
第2步:禁用你的静态子域上的Cookies
现在我们将编辑你的WordPress网站的wp-config.php文件,使 wp-content 文件夹中的资产从 “静态 “域提供,而cookies只通过 “www”地址提供。
大多数Kinsta客户会使用FTP/SFTP客户端来登录他们的WordPress网站,并下载wp-config.php到他们的桌面上进行编辑:

将wp-config.php文件下载到桌面。
使用文本编辑器在wp-config.php文件中添加以下几行(用你自己的域名替换例子):
define("WP_CONTENT_URL", "https://static.example.com/wp-content");
define("COOKIE_DOMAIN", "www.example.com");
保存文件后,把它上传到你的WordPress网站,替换掉以前的版本。
第3步:将现有的资产重定向到子域
上述步骤将允许在浏览器从 “www “地址加载网页和博客文章等内容时发放cookie,但会导致媒体上传等内容和主题内的JavaScript、CSS和字体等资产与 “静态 “域相关。
然而,你的网站可能已经在 “www “地址上有包含这些资产链接的内容。你可以在WordPress数据库中用一点搜索和替换来清理这些内容。
在数据库中工作之前,一定要。做完这些之后:

运行SQL查询以更新WordPress内容中的资产链接。
运行下面的命令,以确保你现有文章中的任何资产链接被导向你的无cookie子域(同样,确保用你自己的域来替换):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'www.example.com/wp-content/', ' static.example.com/wp-content/')
你现在已经在MyKinsta的帮助下成功地在WordPress中配置了一个无cookie的域。用这个域来承载任何你不想发送的静态内容,其他的都用你的常规域。
以下是在MyKinsta中使用cPanel或流行的完成我们上述工作的步骤。
步骤1. 在cPanel中创建一个子域
导航到cPanel主页面的Domains部分。在子域工具中,简单地创建一个连接到你当前WordPress网站的顶级域名的子域。
下面可以看到这些设置,以创建子域static.example.com。

在cPanel中创建一个子域
步骤2. 在cPanel中把子域配置成静态的
当你的新的静态子域准备好了,现在是时候让它名副其实了,让它在WordPress中提供静态内容。
我们将通过编辑你的WordPress站点的wp-config.php文件来做到这一点。访问这个文件的最简单 *** 是在cPanel的File Manager工具中。
在File Manager中,导航到你的网站的public_html文件夹并选择wp-config.php (1)。然后,选择Edit选项(2)来编辑该文件。

找到wp-config.php文件
在wp-config.php文件中,只需添加以下几行(请确保用你自己的域名替换!)。
define("WP_CONTENT_URL", "https://static.example.com/wp-content");
define("COOKIE_DOMAIN", "www.example.com");
点击“Save Changes.”
步骤3. 将现有的帖子重定向到子域
最后,你需要把你现有的帖子重定向到新的静态子域。但首先,一定要,以防它之后不能正常运行。
在cPanel的Database部分,打开PhpMySQL工具。选择你的网站的数据库,然后选择其_posts表。
点击_posts表的SQL标签。运行下面的命令来验证你的帖子URL是否指向你的无cookie子域(同样,要确保用你自己的域来替换):
UPDATE wp_posts SET post_content = REPLACE(post_content, 'www.example.com/wp-content/', ' static.example.com/wp-content/')

将现有帖子重定向到新的静态子域
这就是了! 在cPanel的帮助下,你现在已经在WordPress中设置了一个无cookie域。将无cookie域用于静态内容,如图像、CSS、JavaScript和字体,而在你的网站的主域上允许cookie。
使用无cookie的域名是一个非常有效的 *** ,可以提高你的网站性能,减少主机成本,甚至提高你的客户体验和SEO。
正如我们所看到的,在WordPress中设置无cookie域名是有益的。然而,只有像Kinsta这样的管理型WordPress主机才能充分利用这些好处。
有了移除设置cookie头的便捷工具和直接访问数据库将帖子重定向到一个静态子域,使用无cookie域名从未如此简单。Kinsta的和其他性能监测功能也可以帮助你跟踪结果。
不久前,PHP 8.0大张旗鼓地发布了。它带来了许多新特性、性能增强和变化——其中最令人兴奋的是新的JIT编译器。 技术世界总是在向前发展,PHP也是如此。 ,包含了几个令人兴奋的特性。它定于今年晚些时候于2021年11月25日发布。 在本文中,我们将详细介绍PHP 8.1将带来哪些新的东...
宝塔面板现在已经成为国内许多站长必备的服务器管理必备工具。相比直接使用SSH+FTP来管理服务器,宝塔面板可以提供可视化管理,包括文件管理、数据库管理、数据备份、SSL配置等等。 如果你希望更简单高效地管理您的网站及服务器,宝塔面板是不错的选择。下面是一些宝塔面板安装及常见问题:...
本章节主要是对宝塔面板的主界面的各个版本进行一个简单的说明。 宝塔面板主界面主要包括:服务器操作系统、服务器状态、站点信息、软件管理及网络流量几个部分。 Windows面板有部分功能未实现,其余部分与Linux面板同步。 系统操作...
每台连接到Internet的计算机都有一个Internet协议 (IP) 地址。但是,并非所有IP地址的外观或行为都相同。 如果您使用计算机网络或服务器,了解动态IP和静态IP之间的区别至关重要。通过详细了解每个协议,您可以选择最适合您需求的解决方案。 在本文中,我们将讨论静态和动态IP之间...
宝塔的数据库管理,是基于phpmyadmin管理和新建数据库。其最大的便利性就是类似,通过面板可以快速访问进行管理操作,无需单独访问phpmyadmin的主页。 此外,在宝塔面板进行数据库管理,你也对数据库名、用户名及密码等信息一目了然,及可以对数据库执行快速备份或者导入。 添加数据...
宝塔面板的安全管理可以设置SSH开关、禁用PING、放行端口、屏蔽IP等相关的操作。 SSH的设置 SSH的关闭与启动,点击下图的开关,即可开启或关闭SSH远程连接。 SSH端口的修改,SSH远程连接的默认端口为22,修改端口前,请先查看该端口是否被占用。 PING命令的...