性能优化

wordpress安全

WordPress网站将多个CSS文件合并成一个

为什么要将多个CSS文件合并为一个? 你的WordPress很可能有四五个CSS文件,这样浏览器在加载你的网页时,光是加载CSS文件就得发出四五个请求。我们知道,浏览器在加载一个网页时发出的请求越多,那么加载的速度就越慢。另外,有些CSS文件可能不是存储在你的服务器上,而是存储在另外一个服务器上,而这时又会增加DNS查询的次数。在DNS查询完成之前,浏览器是不能加载任何元素的。而且,也许你的服务器上的CSS文件加载得快,但你不能保证其他服务器上的CSS文件也加载得快。 所以把多个CSS文件合并成一个,合并后的CSS文件缓存在CDN服务器上,既可以减少浏览器发出的请求次数,又可以减少DNS查询次数,从而加快网页的加载速度。 找出网站有多少个外部CSS文件 首先,打开网站主页,然后右击鼠标,选择“查看源码”。再按CTRL+F快捷键调出搜索框,在搜索框中输入stylesheet后回车。选择“高亮全部”,你就能看见网页中有多少个外部CSS文件了。 在你登录WordPress后,你还会看到下图中间三个外部CSS文件,open-sans-css,dashicons-css和admin-bar-css是登录WordPress后才会加载的外部CSS样式。我们不需要合并这三个CSS文件,因为普通浏览者不会登录你的WordPress后台,所以他们的浏览器不会请求这三个CSS文件。 合并多个CSS文件的方法 创建main.css文件 首先在网站根目录下面创建一个文件,命名为main.css。然后编辑main.css文件。我们需要将外部CSS文件的内容全部粘贴到main.css文件中。在网页的源码页面,点击CSS文件的地址,也就是上图中 href 后面的地址。打开了CSS文件,按CTRL+A选择全部内容,然后CTRL+C复制全部内容,将内容粘贴到main.css文件中。再点击下一个CSS文件的href地址,依次它们的内容粘贴到main.css文件中。最后保存。 引用main.css文件 main.css创建好以后,我们需要在wordpress主题文件夹的header.php文件中引用main.css。header.php文件的路径一般为/var/www/html/wp-content/themes/themename/header.php。 在<title>标签下一行,其他<link>标签的上一行,粘贴下面的<link>标签,将域名替换成你自己的域名。保存文件。  <link rel="stylesheet" href="http://www.linuxdashen.com/main.css" type="text/css" media="screen" />...

wordpress死链接

如何找出并删除WordPress网站中的死链接

什么是死链接? 如果浏览器向web服务器发出一个请求,但web服务器找不到相应的文件,如图片,这叫做 Bad Request。而请求中给出的相应文件的链接,就是死链接(Broken Links)。在WordPress网站中,由于主题或插件开发者的疏忽或其他原因,可能会产生一些死链接。 为什么要删除网站中的死链接? 死链接让浏览器发出了不必要的请求,而浏览器在加载网页时发出的请求越多,网页加载就越慢。 如何找出并删除网站的死链接? 我们可以在pingdom网站上测试我们的网站速度。输入自己的域名后,pingdom会给出网站的速度分析报告。在分析报告里,可以查看网站是否有死链接。如下图,背景色为黄色,并且前面有一个感叹号的这个请求就是一个坏请求(Bad Request),也就是死链接。点击右边的小按钮可以查看对应的浏览器请求。在右边的Request Headers下面的Referer一栏中可以找出是哪个文件要求浏览器发出这个请求。 在上图中可以发现,web服务器找不到bx_loader.gif这个文件。我用文件编辑器打开了Referer指出的文件。然后在文件中查找 bx_loader.gif,如下图。 在这个CSS文件中,我将url(images/bx_loader.gif)删除。之后在pingdom网站上重新测试,这一次没有发现死链接。

wordpress javascript

WordPress网站如何将JavaScript从head移到footer

JavaScript是一个客户端脚本语言,它的执行是由浏览器完成的。JavaScript一般放在head部分和footer部分。在这篇文章中,我将展示如何将WordPress网站的JavaScript脚本从head移到footer。 为什么要将JavaScript移到footer 很简单,将JavaScript移到footer可以提升网页的加载速度。JavaScript有一个特点叫做“阻止渲染”。如果JavaScript放置在网页的head部分,那么在加载网页的时候,首先要加载JavaScript。这些head部分的JavaScript在加载完成之前,网页中的其他元素是不可以同时加载的。这就叫做“阻止渲染”(render blocking)。所以,我们最好要将JavaScript放置在网页的底部。这样网页的文字、图片等其他元素可以先呈现在浏览者面前,然后JavaScript在后台加载。 如何将JavaScript移到footer 步骤非常简单。打开WordPress主题文件夹下面的functions.php文件,在文件末尾添加下面的代码。 // Custom Scripting to Move JavaScript from the Head to the Footer function remove_head_scripts()...

nginx gzip

Nginx服务器如何启用gzip压缩功能

压缩的好处 压缩可以减小HTTP回复的大小,从而降低web服务器的响应时间。gzip是web服务器广泛使用的压缩工具,可以将HTTP回复的大小降低到原来的50%~30%。既提高了网页的加载速度,又可以节约服务器流量。 Nginx服务器启用gzip压缩的方法 打开/etc/nginx/nginx.conf配置文件 sudo vi /etc/nignx/nginx.conf 将下面的文字粘贴到 http 部分,如果配置文件中有下面的文字,但前面有个#符号,那么将对应的#符号去掉就行了。 gzip on; gzip_comp_level 2; gzip_http_version 1.1; gzip_proxied any; gzip_min_length 1100;...

nginx性能优化

Nginx性能优化之配置缓冲、超时、压缩和日志

Nginx的缓冲配置 请求缓冲在Nginx请求处理中扮演了重要的角色。当收到一条请求时,Nginx将请求写入缓冲当中。缓冲中的数据成为Nginx的变量,比如$request_body。如果缓冲容量比请求容量小,那么多出来的请求会被写入硬盘,这时便会有I/O操作。Nginx提供了多个directive来修改请求缓冲。 client_body_buffer_size 这个directive设定了request body的缓冲大小。如果body超过了缓冲的大小,那么整个body或者部分body将被写入一个临时文件。如果Nginx被设置成使用文件缓冲而不使用内存缓冲,那么这个dirctive就无效。client_body_buffer_size在32位系统上默认是8k,在64位系统上默认是16k。可以在http, server 和 location模块中指定,如下: server {         client_body_buffer_size 8k; } client_max_body_size 这个directive设定Nginx可以处理的最大request body大小。如果收到的请求大于指定的大小,那么Nginx会回复HTTP...

nginx服务器性能

Nginx服务器性能优化的三大方面

Nginx服务器非常快,但是Nginx的默认设置并没有针对具体的硬件进行调优。在这篇文章中,我们要把Nginx的性能发挥到极限。Nginx的配置分为三大部分:worker进程配置、I/O配置、TCP配置。我们将分别对这三大配置展开讨论,并在最后给出综合性的配置。 Nginx的worker进程配置 worker_processes worker_processes directive指定nginx worker进程的数量。它是一个全局性配置,不属于events模块,也不属于http或location模块。 worker_processes 1; 默认的值是1,意味着nignx只打开一个worker进程。最优的设置是worker进程数量要与CPU的核数相等。我们可以用lscpu命令来找出CPU的核数。 lscpu 也可以用 cat /proc/cpuinfo | grep 'processor' | wc -l 另外,我们也可以将worker_processes的值设为auto,这样nginx会自动检测CPU核数并打开相同数量的worker进程。...

Debian VPS使用optipng和jpegoptim自动压缩网站图片

读者会发现,我的网站上有很多图片。有句话叫做“一张图胜过一千句话”。图片对于技术类文章尤其重要,对读者理解文章的内容有很大的帮助。但是JPG和PNG这些图片文件体积大,不仅会对服务器处理请求产生额外的压力,也会延长网页从服务器传送到用户所花的时间。在这篇文章中,我将介绍如何在Debian VPS下使用命令行压缩图片以提高网页加载速度,然后将命令行写成一个cron任务,以实现每天自动压缩图片。 安装optipng和jpegoptim来压缩图片 我们可以用optipng和jpegoptim来分别压缩PNG和JPEG文件。大多数Linux发行版的软件库中都有这两个软件。在Debian服务器上输入下面的命令安装: sudo apt-get install optipng jpegoptim 安装好后,切换到网站根目录,如: cd /var/www/html/ 然后执行下面的两条命令在网站根目录下面分别查找PNG和JPEG文件,然后压缩。 find . -iname '*.png' -print0 | xargs...