简单办法在没有主题加密的前提下,找到 外观 – 主题编辑器 – 模板函数Functions
将下面代码加上去可以有效解决后台卡顿
// 后台禁用Google Open Sans字体,加速网站 add_filter( 'gettext_with_context', 'wpdx_disable_open_sans', 888, 4 ); function wpdx_disable_open_sans( $translations, $text, $context, $domain ) { if ( 'Open Sans font: on or off' == $context && 'on' == $text ) { $translations = 'off'; } return $translations; }
原理:WordPress是美国人开发的,后台首次进入加载的是谷歌字体;中国对谷歌墙了,所以禁用谷歌字体可以加速
2. WordPress极致加速-Nginx+WP Fastest Cache全静态化
在使用Nginx+WP Fastest Cache时,虽然页面做了缓存,但并不是真正的缓存,请求仍然需要通过PHP解析器来处理,最简单的验证方法时把网站目录的index.php修改个名字,网站就挂掉了。
网上有很多Wp Super Cache配置Nginx的例子,但是没有找到Wp Fastest Cache配置的例子,下面的配置可以使你的WP Fastest Cache达到真正的完全静态,(甚至PHP进程挂掉,网站依旧能正常运行)
location / { # 如果请求的文件已存在,直接返回 if (-f $request_filename) { break; } set $caches 1; #是否缓存 set $request_file $document_uri; #获取请求文件 set $cache_file ''; #缓存文件 #请求方式是POST的不拦截 if ($request_method = POST) { set $caches 0; } #包含GET请求参数的不拦截(访问量高可以注释掉) if ($query_string) { set $caches 0; } # 指定静态缓存文件的路径 if ($caches = 0) { set $request_file ''; } if ($request_file ~ ^(.+)$) { set $cache_file /wp-content/cache/all/$1/index.html; #你的WP Fastest Cache缓存目录 } # 命中缓存 if (-f $document_root$cache_file) { rewrite ^ $cache_file last; } # 无法命中缓存,转给WordPress来处理 if (!-e $request_filename) { rewrite . /index.php last; } }
接着看看,你的网站打开速度是不是快了好多好多。
如果想在header中检测是否生效了,就添加下面的代码:
location /wp-content/cache/all/ { #这一行是你的WP Fastest Cache缓存文件路径 add_header Cache HIT; #添加header头,表示命中了缓存 }
原理上面已说明
3. 理论解决WordPress后台卡顿问题
最近一直想解决WordPress后台卡反应慢问题,情况基本是这样,登陆管理员账号到后台各种点击操作都反应非常慢,而且在登陆状态下访问前端页面也非常卡,非登陆用户访问前端页面流畅不受影响。
服务器环境:windows2008S2,apache2.4+php7.0+mysql-5.7
其他问题:用一段时间后httpd进程会占用过多内存,不定期出现CPU使用率100%,此时网站前端访问出现卡顿图片和JS加载缓慢出错,有时web服务错误等。
网上搜索“解决WordPress后台卡”,普遍把原因归结为google在线字体之类的原因,这些问题早就已经被各种优化插件解决,根本不存在!所以还是决定要从服务器环境上来解决!
WordPress后台加载卡顿解决办法大全-WordPress极简博客
解决方法一、优化apache
1、http-mpm.conf设置
Apache的线程数控制文件为http-mpm.conf,在conf/exrtra目录下面,要使该配置文件起作用需要在httpd.conf中将 Include conf/extra/httpd-mpm.conf前#去掉,以使得http-mpm.conf生效。
在Windows系统中,起作用的是Winnt mpm段
ThreadsPerChild 150 MaxConnectionsPerChild 0
以上是默认的配置,一般情况下够用了,但负荷较大的网站就需要修改了,否则访问网站会变慢或没有响应。实际设置中可以根据apache-status查看apache实时连接状态,查看其中线程占用数目情况来进行相应的调整,我的服务器最后设置如下:
ThreadsPerChild 500 MaxRequestsPerChild 10000
其中ThreadLimit是占用系统线程数限制,修改后会在apache-status中直接看到效果,就是对应的最大的可用线程数。
MaxRequestsPerChild 是进程的最大的请求数目,既指网站收到请求的缓存数。设置太小了会影响服务器性能,因为会占用较多cpu时间,太大了则会占用内存资源。一般大型的网站文件个数都是成千上万,所以管理员应该根据网站情况自己设定,只要不为0(无限制)就可以,以防止内存溢出。
ThreadsPerChlid是Apache进程的子线程数,意思是服务器开了这么多的线程数来等待响应客户端请求。该参数需要根据apache-status实时的监控情况来调节,太大会导致内存增长过快,直到服务器当机,太小会导致服务器连接队列在高峰期时占满,从而导致网站连接慢。同时我们应该修改另一个配置文件httpd-default.php中的超时设置来配合这个参数。
2、httpd-default.conf设置
在httpd.conf中去掉Include conf/extra/httpd-default.conf前的#以使httpd-default.php生效。我们需要调节以下参数:
Timeout 15
该参数为连接超时,默认的300秒显然太大,缩小该参数就会减少同时连接数,即用户实际占用的线程数,这样就可以起到配合上面ThreadsPerChlid参数的作用。
KeepAlive On
该参数为是否保持活连接,目前网站中一个页面一般会包含多个文件,所以相应用户访问时会有多个请求,因此开启可以提高服务器性能。(有人说keepalive在windows下开了没效果)
MaxKeepAliveRequests 50
该参数为最大的活连接请求数,可以根据网页实际包含的文件数目自行调节。
3、httpd.conf设置
#AcceptFilter http none #AcceptFilter https none
3、修改为
AcceptFilter http none AcceptFilter https none
httpd.conf中默认添加了这个配置只是注释掉了,我们去掉#号,开启配置。
此处可以解决某些浏览器导致apache慢或者假死不响应的情况,提高兼容性。
这样设置后,Apache在响应请求和防止恶意攻击方面就取得较为平衡的效果,当然由于内存回收机制和进程管理不同,Windows下长期运行Apache还是不如Unix稳定,因此我们可以让Apache在每天凌晨访问人数少时自动重启一次,以回收资源。
解决方法二、优化mysql
修改mysql文件夹下面的[code]my.ini[/code]文件再重启服务,发现排除故障时还是查看一些案例解决的最有参考价值,以下都是修改[code]my.ini[/code],如果你的my.ini中查询没有的话可以直接添加进去
#取消文件系统的外部锁
skip-locking
#不进行域名反解析,注意由此带来的权限/授权问题
skip-name-resolve
#索引缓存,根据内存大小而定,如果是独立的db服务器,可以设置高达80%的内存总量
key_buffer = 512M
#连接排队列表总数
back_log = 200
max_allowed_packet = 2M
#打开表缓存总数,可以避免频繁的打开数据表产生的开销
table_cache = 512
#每个线程排序所需的缓冲
sort_buffer_size = 4M
#每个线程读取索引所需的缓冲
read_buffer_size = 4M
#MyISAM表发生变化时重新排序所需的缓冲
myisam_sort_buffer_size = 64M
#缓存可重用的线程数
thread_cache = 128
#查询结果缓存
query_cache_size = 128M
#设置超时时间,能避免长连接
set-variable = wait_timeout=60
重点在哪里很容易看到吧,红色的红色的!!!!!
重启刷新了几次,终于快了起来,还是缓存管用啊! WordPress后台也不在卡了,瞬间流畅起来。前所未有的舒畅~~~~
最后,有条件和能力的最好还是在linux下使用apache,windows还是IIS好一些,不过很有趣啊~
4. 浅谈解决wordpress解决办法
wordpress 功能强大、扩展性强,这主要得益于其插件众多,易于扩充功能,基本上一个完整网站该有的功能,通过其第三方插件都能实现所有功能。WordPress 有强大的社区支持,有上千万的开发者贡献和审查 WordPress,所以 WordPress 是安全并且活跃的。由于静态化较差,确切地说是真正静态化做得不好,所以在访问后台的时候 WordPress 会加载很多接口信息。当你登陆 WordPress 后台的时候,它会连接 WordPress 官方接口,获取程序更新,主题更新,插件更新,语言包更新等,由于 WordPress 官方服务器在国外,所以说国内用户访问加载极其缓慢,有时候直接假死。我们需要做的就是屏蔽掉无用的后台查询功能,把以下代码添加到你当前主题目录下的函数文件 functions.php 中:
//去除后台没必要的功能 function disable_dashboard_widgets() { remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');//近期评论 remove_meta_box('dashboard_recent_drafts', 'dashboard', 'normal');//近期草稿 remove_meta_box('dashboard_primary', 'dashboard', 'core');//wordpress博客 remove_meta_box('dashboard_secondary', 'dashboard', 'core');//wordpress其它新闻 remove_meta_box('dashboard_right_now', 'dashboard', 'core');//wordpress概况 remove_meta_box('dashboard_incoming_links', 'dashboard', 'core');//wordresss链入链接 remove_meta_box('dashboard_plugins', 'dashboard', 'core');//wordpress链入插件 remove_meta_box('dashboard_quick_press', 'dashboard', 'core');//wordpress快速发布 } add_action('admin_menu', 'disable_dashboard_widgets'); //移除 WordPress 加载的JS和CSS链接中的版本号 function wpdaxue_remove_cssjs_ver( $src ) { if( strpos( $src, 'ver=' ) ) $src = remove_query_arg( 'ver', $src ); return $src; } add_filter( 'style_loader_src', 'wpdaxue_remove_cssjs_ver', 999 ); add_filter( 'script_loader_src', 'wpdaxue_remove_cssjs_ver', 999 ); //移除自动保存 wp_deregister_script('autosave'); //移除修订版本 remove_action('post_updated','wp_save_post_revision' ); //后台禁用Google Open Sans字体,加速网站 add_filter( 'gettext_with_context', 'wpdx_disable_open_sans', 888, 4 ); function wpdx_disable_open_sans( $translations, $text, $context, $domain ) { if ( 'Open Sans font: on or off' == $context && 'on' == $text ) { $translations = 'off'; }return $translations; }
1.本站资源都是白菜价出售,一个VIP能下载全站源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如遇下载链接失效、解压密码错误、存在版权侵权等问题请联系我们本站将在第一时间解决处理。
VIP源码 » WordPress后台加载卡顿怎么办?解决办法大全