使用插件删除WordPress的license.txt

时间:2012-10-30 10:32:24

标签: php wordpress-plugin wordpress

我想编写一个插件,在用户请求HTTP 404时返回license.txt,挂钩的正确action是什么(阻塞的有效和有效方式)?

更新

因为我无法控制Web服务器,所以我必须将其作为插件

3 个答案:

答案 0 :(得分:8)

解决方案实际上非常简单。 您需要创建写入.htaccess的插件。

  1. 在/ wp-content / plugins中创建 licence_redirect 文件夹。
  2. 在该文件夹中创建 licence_redirect.php 文件。
  3. 将以下代码粘贴到此 licence_redirect.php php文件中:
  4. <?php
    /*
    Plugin Name: Licence redirect
    Description: Redirects license.txt. to 404
    Author: J. Wrong
    Version: 0.1
    */
    ?>
    <?php
    function lr_flush_rewrites() {
        global $wp_rewrite;
        $wp_rewrite->flush_rules();
    }
    
    function lr_add_rewrites() {
        global $wp_rewrite;
        $lr_wp_rules = array(
            'license\.txt$' => '[R=404,L]',
        );
    
        $wp_rewrite->non_wp_rules = $lr_wp_rules + $wp_rewrite->non_wp_rules;
    }
    
    register_activation_hook( __FILE__, 'lr_flush_rewrites' );
    add_action('generate_rewrite_rules', 'lr_add_rewrites');
    
    1. 安装并激活插件。
    2. 在管理员面板中,转到设置 - &gt;固定链接
    3. 按保存更改 从现在开始,您的license.txt请求将被重定向到404。 如果您无法在服务器上创建文件夹,则需要压缩插件的文件夹并使用WP admin上传它。 干杯......现在正在计算赏金:P

答案 1 :(得分:2)

你做不到。使用标准的WordPress .htaccess,对静态文件的请求根本不会传递给PHP,因此无法挂钩它们。

答案 2 :(得分:1)

有一个插件可以帮到你。只需设置要重定向的文件及其目标即可。它甚至保留了日志

http://wordpress.org/extend/plugins/redirection/