WordPress安装完成后优化精要

  • A+
所属分类:WordPress

文件修改

1. WordPress后台

后台-Media取消按照年/月/的目录结构保存文件,取消缩略图,调整缩略图尺寸为0,然后修改固定链接。

2. 根目录.htaccess

Options All -Indexes
RedirectMatch 301 /apple-touch-icon(.*)?.png http://example.com/apple-touch.png

3. 主题functions.php

/*移除不必要meta*/
remove_action( 'wp_head', 'wp_generator' ) ; 
remove_action( 'wp_head', 'wlwmanifest_link' ) ; 
remove_action( 'wp_head', 'rsd_link' ) ;
/*取消评论框的html功能*/
add_filter( 'pre_comment_content', 'wp_specialchars' );
/*隐藏二级RSS地址*/
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );
/*隐藏登陆界面提示*/
function no_errors_please(){
    return 'GET OFF MY LAWN !! RIGHT NOW !!';
    }
add_filter( 'login_errors', 'no_errors_please' );
/*停用网址猜测功能*/
add_filter('redirect_canonical', 'stop_guessing');
    function stop_guessing($url) {
        if (is_404()) {
            return false;
        }
    return $url;
}

4. 修改wp-config.php

/*禁用版本修订*/
define( 'WP_POST_REVISIONS', false);
/*限制版本数*/
define( 'WP_POST_REVISIONS', 3);
/*修改自动保存时间*/
define( 'AUTOSAVE_INTERVAL', 120 );

5. 根目录 robts.txt

User-agent:
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /feed/
Disallow: /feed/

说明

1. WordPress后台

后台-Media取消按照年/月/的目录结构保存文件,取消缩略图,调整缩略图尺寸为0。

2. 移除如WordPress版本等不必要的信息

在主题functions.php文件加入以下代码。

remove_action( 'wp_head', 'wp_generator' ) ; 
remove_action( 'wp_head', 'wlwmanifest_link' ) ; 
remove_action( 'wp_head', 'rsd_link' ) ;

3. 禁止浏览wordpress文件夹目录

将下列代码加入根目录下的.htaccess文件。同时,确保在wp-content/themeswp-content/plugins各有一个空白的 index.php文件。

Options All -Indexes

4. 取消WordPress评论框的HTML 标签和属性

WordPress评论框里面可以添加一些html标签,但这经常会导致大量的垃圾链接,并且可能会引发安全隐患。建议将下列代码加入到模板的 functions.php 文件来取消该功能。

add_filter( 'pre_comment_content', 'wp_specialchars' );

5. 关闭WordPress的版本修订功能

WordPress会自动保存文章的各个修订版本,如果文章量大,且文章经常修改的话,会导致数据库变得臃肿,建议取消。可将下列代码放置到WordPress根目录下的 wp-config.php 文件,来取消版本修订功能。

define( 'WP_POST_REVISIONS', false);

当然,你也可以通过下面的代码来限制wordpress修订版本保存的次数:

define( 'WP_POST_REVISIONS', 3);

6. 修改WordPress自动保存的时间

WordPress的自动保存功能默认每分钟保存一次,保存的瞬间,浏览器基本会处于假死的状态。你可以通过下面的代码来修改wordpress自动保存的时间间隔。

define( 'AUTOSAVE_INTERVAL', 120 );

7. 隐藏二级RSS地址

WordPress 默认有多个RSS地址,如文章rss,评论rss,整站rss,评论rss,甚至分类rss,存档rss等。使用rss阅读器订阅的时候,读者很容易被这么多的rss搞糊涂。建议只发布整站的rss,可以用将下面的代码放到模板的 functions.php 文件实现。

remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );

8. 将所有的RSS地址转向主RSS地址

(保留,根据主机情况,自己暂时不设置)在上一点,我们仅仅是从模板移除部分rss地址,但实际上这些rss是仍然存在的。可以通过将下面的代码加入 .htaccess 文件,来将各个RSS地址转向主RSS地址。记得将里面的RSS链接换成你自己的。

<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
 RewriteRule ^feed/?.*$ http://feeds.freegroup.org/freegroup [L,NC,R=301]
</IfModule>

9. 隐藏WordPress登陆界面的错误提示

WordPress默认的登陆界面,会提示你密码错误,还是用户名错误。但这很容易被黑客利用来暴力破解密码,因此,有必要隐藏这个提示,将下列代码加入到 functions.php 文件就可实现。

function no_errors_please(){
    return 'GET OFF MY LAWN !! RIGHT NOW !!';
    }
add_filter( 'login_errors', 'no_errors_please' );

10. 采用多步验证登陆

11. 更改固定链接结构

12. 添加 favicon 标识

在网站根目录添加 16×16 的 favicon.ico 文件和 144×144 的 apple-touch.png 文件,把下列代码加入 .htaccess 文件中。

RedirectMatch 301 /apple-touch-icon(.*)?.png http://example.com/apple-touch.png

或者在模板header文件中添加下列代码:

<link href="url/favicon.ico" rel="shortcut icon"/>
<link rel="Bookmark" href="url/favicon.ico" />

13.禁止搜索引擎索引WordPress程序自身

搜索引擎索引站点是好的,但没必要索引WordPress程序本身,可以将下面的代码加入到WordPress根目录下的 robots.txt 文件里面。

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /feed/
Disallow: */feed/

如果不需要搜索引擎搜索,干脆一把梭哈。

User-agent: *
Disallow: /

14. 将 Admin 账户权限降低

Admin是默认的WordPress管理员账户,为了降低安全隐患,你可以新建一个管理员账户,然后将默认的admin管理员账户权限降低。

15. 不要使用WordPress自带搜索(暂时不采用)

建议使用WordPress自定义搜索,在减轻服务器压力的同时,更好的为读者提供便利。若想关闭WordPress自带搜索,可以在主题目录下的functions.php中添加下列代码。

function fb_filter_query( $query, $error = true ) {
    if ( is_search() ) {
        $query->is_search = false;
        $query->query_vars展开 = false;
        $query->query展开 = false;
    // to error
    if ( $error == true )
    $query->is_404 = true;
    }
}
add_action( ‘parse_query’, ‘fb_filter_query’ );
add_filter( ‘get_search_form’, create_function( ‘$a’, “return null;” ) );

16. 删除所有不用的模板和插件

删除所有不用的模板和插件,一来可以节省空间,二来可以减少对服务器的压力,三来,也可以减少一些引发漏洞的可能。

17. 停用WordPress的网址猜测功能

WordPress 有一个很奇怪的功能,假如一个人从外部链接进入 blogunion.org/hello 这个链接,如果你的网站已经将该链接移除,他会转到具有相类似词组的页面,如 blogunion.org/hello-world 。如果你想直接以404错误页面来代替这个功能,你可以将以下代码加入到模板里面的 functions.php 文件。

add_filter('redirect_canonical', 'stop_guessing');
function stop_guessing($url) {
    if (is_404()) {
    return false;
    }
    return $url;
}

18. 让访问者缓存WordPress页面内容(暂不启用)

让访问者缓存WordPress页面内容,这样读者就能更快速的载入你的站点。你可以通过将以下的代码加入到 .htaccess 文件,或使用WordPress缓存插件WP Super Cache、Hyper Cache这类插件来解决这个问题。

ExpiresActive On
ExpiresByType image/gif "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"

19. 禁用WordPress后台文件编辑功能(暂不启用)

WordPress默认是管理员登陆后,可以直接在后台修改wordpress模板和插件等文件。但对于很多不熟悉WordPress的人来说,很可能一个修改错误,整个网站都崩溃了。如果你是帮别人维护WordPress,而那个人又是个菜鸟。那么你会非常需要这个功能。你可以将下面的代码加入到 wp-config.php 文件来实现。

define( 'DISALLOW_FILE_EDIT', true );

21. 移除链接里面的动态参数

例如,博客联盟的域名是blogunion.org,因为各种各样的原因,经常会出现blogunion.org/?ref=xxxx这样的链接。这对于SEO是不利的,会降低链接的质量。你可以通过将以下代码加入到 .htaccess 文件来移除这些参数。

RewriteEngine On
RewriteCond %{QUERY_STRING} !=""
RewriteCond %{QUERY_STRING} !^p=.*
RewriteCond %{QUERY_STRING} !^s=.*
RewriteCond %{REQUEST_URI} !^/wp-admin.*
RewriteRule ^(.*)$ /$1? [R=301,L]
weinxin
独角兽驿站
公众号

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: