web-dev-qa-db-ja.com

Wordpress(W3 Total Cache)を使用していることを隠すには

セキュリティ上の理由から、私はWord Pressを使用していることが明白であることを望まない。 W3 Total Cacheプラグインを使用して、HTML、CSS、およびJSを縮小します。私はまたCDNを使用するかもしれません。

実際にこれらのディレクトリの名前を変更せずにWordpressのディレクトリ "wp-content"、 "wp-admin"、 "wp-includes"を書き換えることができるようにW3 Total Cacheプラグインを修正することは可能ですか?私は理想的には "w3tc"のようなW3 Total Cacheディレクトリを書き換えられることを望みます

1
baritoneuk

これは、 サイトがWordPressを使用しているという事実を隠すためのステップ で詳細に説明されています。

その質問の答えは、wp-contentとpluginディレクトリの名前を変更することでした。これらのディレクトリを書き換えたい場合は、 Roots WordPressテーマ にあるこれらの関数を使用して、サイトのルートディレクトリを基準にしてディレクトリを書き換えることができます。

<?php
if (stristr($_SERVER['SERVER_SOFTWARE'], 'Apache') !== false) {
    function roots_htaccess_writable() {
        if (!is_writable(get_home_path() . '.htaccess')) {
            add_action('admin_notices', create_function('', "echo '<div class=\"error\"><p>" . sprintf(__('Please make sure your <a href="%s">.htaccess</a> file is writeable ', 'roots'), admin_url('options-permalink.php')) . "</p></div>';"));
        };
    }

    add_action('admin_init', 'roots_htaccess_writable');

    // Rewrites DO NOT happen for child themes
    // rewrite /wp-content/themes/roots/css/ to /css/
    // rewrite /wp-content/themes/roots/js/  to /js/
    // rewrite /wp-content/themes/roots/img/ to /js/
    // rewrite /wp-content/plugins/ to /plugins/

    function roots_flush_rewrites() {
        global $wp_rewrite;
        $wp_rewrite->flush_rules();
    }

    function roots_add_rewrites($content) {
        $theme_name = next(explode('/themes/', get_stylesheet_directory()));
        global $wp_rewrite;
        $roots_new_non_wp_rules = array(
            'css/(.*)'      => 'wp-content/themes/'. $theme_name . '/css/$1',
            'js/(.*)'       => 'wp-content/themes/'. $theme_name . '/js/$1',
            'img/(.*)'      => 'wp-content/themes/'. $theme_name . '/img/$1',
            'plugins/(.*)'  => 'wp-content/plugins/$1'
        );
        $wp_rewrite->non_wp_rules += $roots_new_non_wp_rules;
    }

    add_action('admin_init', 'roots_flush_rewrites');

    function roots_clean_assets($content) {
        $theme_name = next(explode('/themes/', $content));
        $current_path = '/wp-content/themes/' . $theme_name;
        $new_path = '';
        $content = str_replace($current_path, $new_path, $content);
        return $content;
    }

    function roots_clean_plugins($content) {
        $current_path = '/wp-content/plugins';
        $new_path = '/plugins';
        $content = str_replace($current_path, $new_path, $content);
        return $content;
    }

    // only use clean urls if the theme isn't a child or an MU (Network) install
    if (!is_multisite() && !is_child_theme()) {
        add_action('generate_rewrite_rules', 'roots_add_rewrites');
        if (!is_admin()) { 
            add_filter('plugins_url', 'roots_clean_plugins');
            add_filter('bloginfo', 'roots_clean_assets');
            add_filter('stylesheet_directory_uri', 'roots_clean_assets');
            add_filter('template_directory_uri', 'roots_clean_assets');
        }
    }

    function roots_add_h5bp_htaccess($rules) {
        global $wp_filesystem;

        if (!defined('FS_METHOD')) define('FS_METHOD', 'direct');
        if (is_null($wp_filesystem)) WP_Filesystem(array(), ABSPATH);

        if (!defined('WP_CONTENT_DIR'))
        define('WP_CONTENT_DIR', ABSPATH . 'wp-content');   

        $theme_name = next(explode('/themes/', get_template_directory()));
        $filename = WP_CONTENT_DIR . '/themes/' . $theme_name . '/inc/h5bp-htaccess';

        $rules .= $wp_filesystem->get_contents($filename);

        return $rules;
    }

    add_action('mod_rewrite_rules', 'roots_add_h5bp_htaccess');
}

?>

また、W3 Total Cache X-Powered-byヘッダーを確認して削除する必要があります。

<IfModule mod_headers.c>
         Header set X-Powered-By "W3 Total Cache/0.9.2.3"
    </IfModule>

CDN W3 Total Cacheを使用する場合も同じパス構造を使用します。

wp-content/w3tc/min/xxxxx/default.include.xxxx.css

そのため、アクセス権がある場合、またはminifyを使用しない場合は、CDNの.htaccessを使用してこれらを書き換える必要があります。

0
Chris_O

WordPressを隠すことは可能ですが、多大な労力を要し、アップデートに関しては問題があります。また、それは間違った解決策です、より良いオプションは実際にWordPressを保護することでしょう、そしてあなたがそうするのを助けることができる多くのガイド/プラグインがあります。

あなたの質問に答えるために、セキュリティのためにディレクトリを書き換えるのにw3 total cacheを使うことはあまり意味がありません。

0
Wyck