Kroki, które należy podjąć, aby ukryć fakt, że witryna korzysta z WordPress?

142

Mam stronę internetową, dla której staramy się dyskretnie informować o tym, że korzystamy z WordPress. Jakie kroki możemy podjąć, aby uczynić to mniej oczywistym?

EDYCJA - Ważna uwaga bezpieczeństwa:

Proszę zrozumieć, że robienie tego doskonale jest niemożliwe zgodnie z odpowiedzią Marka , więc nie polegaj na tym jako środku bezpieczeństwa.

Casebash
źródło
7
Dlaczego chcesz ukryć, że używasz Wordpress?
Wadih M.,
15
@Wadih: Ponieważ kazano mi
Casebash
5
To bezpieczeństwo dzięki niejasnościom. Jeśli naprawdę tego chcą, ktoś może skorelować zachowanie generacji strony i udowodnić, że działa na silniku Wordpress.
Wadih M.,
28
@Wadih M. - „Security by Obscurity” nie jest jedynym powodem. Jeden z moich klientów chce tego samego, ale chcą tego, ponieważ chcą móc sprzedawać swoje hostowane usługi klientom, którzy nie będą chcieli płacić najwyższego dolara, jeśli pomyślą: „Cholera, używają tylko WordPress”. Jest to więc gra brandingowa / postrzegania, a nie bezpieczeństwa, przynajmniej dla mojego klienta.
MikeSchinkel
2
Sześć lat na tak wielu stronach korzysta z WordPress, nikt i tak ci nie uwierzy. ;-)
cjbj

Odpowiedzi:

128

Największe upominki WordPress znajdują się między <head> </head>tagami.

Przykład wyjściowej zawartości WordPress według motywu Twentyten i sposobu jej usunięcia:

<link rel="profile" href="http://gmpg.org/xfn/11" /> 

Usuń bezpośrednio z header.php

 <link rel="stylesheet" type="text/css" media="all" href="http://example.com/wp-content/themes/twentyten/style.css" /> 

Ukryj WordPress, wywołując arkusz stylów z innej lokalizacji i zmień katalog treści wp-content. WordPress wymaga, aby Twój motyw zawierał kilka podstawowych informacji na górze style.css (style.css musi znajdować się w katalogu głównym motywów). Musisz stworzyć alternatywny CSS i wywołać go z głowy. WordPress nie wymaga używania stylu motywów. Ccs wymaga jedynie, aby znajdował się w katalogu motywów.

Usuń bezpośrednio z header.php

<link rel="alternate" type="application/rss+xml" title="Example Blog &raquo; Feed" href="http://example.com/feed/" /> 
<link rel="alternate" type="application/rss+xml" title="Example Blog &raquo; Comments Feed" href="http://example.com/comments/feed/" />    
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd" /> 
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml" /> 
<link rel='index' title='Example Blog' href='http://example.com/' /> 
<meta name="generator" content="WordPress 3.1-alpha" /> 

Aby usunąć te dodatkowe linki, możesz dodać filtr do functions.php

// remove junk from head
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'start_post_rel_link', 10, 0);
remove_action('wp_head', 'parent_post_rel_link', 10, 0);
remove_action('wp_head', 'adjacent_posts_rel_link', 10, 0);

Możesz zmienić katalog wtyczek i katalog wp-content w pliku wp-config.php, ale możesz mieć problemy, jeśli Twój motyw lub dowolne wtyczki nie używają odpowiedniej metody do wywoływania plików.

define( 'WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'] . '/new-wp-content' );

Ustaw WP_CONTENT_URL na pełny identyfikator URI tego katalogu (bez końcowego ukośnika), np

define( 'WP_CONTENT_URL', 'http://example/new-wp-content');

Opcjonalnie Ustaw WP_PLUGIN_DIR na pełną ścieżkę lokalną tego katalogu (bez końcowego ukośnika), np

define( 'WP_PLUGIN_DIR', $_SERVER['DOCUMENT_ROOT'] . '/new-wp-content/new-plugins' );

Ustaw WP_PLUGIN_URL na pełny identyfikator URI tego katalogu (bez końcowego ukośnika), np

define( 'WP_PLUGIN_URL', 'http://example/new-wp-content/new-plugins');

WTYKI

Pamiętaj, że niektóre wtyczki, takie jak Akismat, All in One SEO, W3-Total-Cache, Super Cache i wiele innych dodają komentarze do wyniku HTML. Większość z nich można łatwo zmodyfikować, aby usunąć komentarze, ale zmiany zostaną zastąpione przy każdej aktualizacji wtyczek.

wp-obejmuje

Katalog wp-zawiera przechowuje jquery i różne inne pliki js, które będą wywoływać motywy lub wtyczki za pomocą wp_enqueue_script (). Aby to zmienić, musisz wyrejestrować domyślne skrypty WordPress i zarejestrować nową lokalizację. Dodaj do functions.php:

function my_init() {
    if (!is_admin()) {
        // comment out the next two lines to load the local copy of jQuery
        wp_deregister_script('jquery');
        wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js', false, '1.3.2');
        wp_enqueue_script('jquery');
    }
}
add_action('init', 'my_init');

Trzeba to zrobić z każdym skryptem używanym przez Twój motyw lub wtyczki.

Chris_O
źródło
Chris_O : Świetna odpowiedź! Powinieneś także dodać, że jeśli używają wtyczek lub motywów, wiele z nich można łatwo zidentyfikować; tzn. jeśli ktoś używa wtyczki akismet lub seo all-in-one, to jest to całkiem martwa gratka dla kogoś, kto wie, czego szuka.
MikeSchinkel,
@MikeSchinkel Prawda, ale jednocześnie wp-obejmuje i wp-admin; z wyjątkiem tego, że nie możesz zmienić żadnego z nich ani nie możesz ich ukryć bez ograniczenia funkcjonalności strony.
John P Bloch,
@John P Bloch: Zdecydowanie jednak nie powiedziałbym, ale powiedziałbym i . :)
MikeSchinkel
3
@MikeSchinkel : dla wp-admin i wp- included możesz zrobić pewne rzeczy za pomocą kontroli dostępu apache, aby uczynić te ścieżki nieistniejącymi dla innych użytkowników niż administrator, np. Prowadzącymi do standardowego 404.
hakre
@Chris_O: Kasa register_theme_directory(), myślę, że wspaniale jest ukryć katalog motywu poza katalogiem „wp-content”.
hakre
45

Jeden często pomijany bit - usuń readme.htmlw katalogu głównym WordPress. Nie tylko identyfikuje instalację jako WP, ale ma również dokładną wersję. I nie zapomnij powtórzyć o aktualizacjach.

Powiązane pytanie: Zapobiegaj dostępowi lub automatycznemu usuwaniu pliku readme.html, license.txt, wp-config-sample.php

Rarst
źródło
5
Dobra uwaga - możesz również użyć swojego .htaccess, aby zawsze odmawiać dostępu do readme.html, więc nie musisz się martwić o jego ponowne usunięcie.
Tim Malone
... zobacz także wordpress.stackexchange.com/a/201805/13561
Frank Nocke
21

Zawsze korzystałem z metody Roots Theme .
Ale zastosowanie tego do tych ThemeJungle jest zwykle duży ból głowy.

Zacząłem więc bawić się WP_CONTENT_*stałymi. Uważam, że jest to metoda znacznie mniej podatna na błędy i właśnie nad tym pracuję:

okno aktywności safari
/mjest uploadsfolderem, /tjest themesfolderem i /t/tjest aktywnym folderem motywów. Witryna nie jest skomplikowana, więc niewiele zasobów zostało załadowanych ...


WP_CONTENTLESS

wp-config.php

Ustawienie wp-contentna root ( /public_html/) strony.

/** 
 Inside WP_CONTENT, the following folders should exist: 
 /languages , /mu-plugins , /plugins , /themes , /upgrade , /uploads  

 The WP_CONTENT_* definitions bellow REMOVE the existence of the /wp-content folder 
 and makes its contents reside in the ROOT of your site

 UTTERMOST attention is necessary when doing file maintenance activities in the server (i.e.: WP upgrades, new Webmaster...), 
 as the Themes and Plugins folders are meant to be renamed to /t and /p (serious candidates for unthoughful removal)

 PLEASE note:
 - we change the Plugins folder in WP_PLUGIN_* definitions
 - the Themes folder is changed by a MustUse Plugin 
   (/mu-plugins/set-extra-themes-folder.php)
 - the Uploads folder is changed in WordPress settings page 
   (http://example.com/wp-admin/options-media.php)
 - the hardcode path to be used in WP_CONTENT_DIR and WP_PLUGIN_DIR can be checked using an action inside the set-extra-themes-folder Plugin (check the comments in this file)
*/
define( 'WP_CONTENT_DIR', '/www/htdocs/username/public_html' );
define( 'WP_CONTENT_URL', 'http://www.example.com' );

define( 'WP_PLUGIN_DIR', '/www/htdocs/username/public_html/p' );
define( 'WP_PLUGIN_URL', 'http://www.example.com/p' );

Pytałem o to w [wp-hackers] - Jakieś wady w ustawianiu WP_CONTENT_DIR (i URL) na DOCUMENT_ROOT? , gdzie John Blackbourn 1 , Mike Little 2 i Otto 3 byli na tyle uprzejmi, aby doradzić:

1
Aktywowałem tę strukturę na stronie przez ostatnie 18 miesięcy i nie widziałem żadnych problemów. Podobnie jak w przypadku każdej zmiany lokalizacji katalogu zawartości, musisz dokładnie sprawdzić, czy wszystkie wtyczki dodane do witryny nie zakładają, że katalog zawartości znajduje się wwp-content.

2
W sieci toczą się dyskusje, które$_SERVER['DOCUMENT_ROOT']mogą być podatne na ataki hakerskie. W takim przypadku jest to wyjątkowo niebezpieczne, ponieważ istnieje wiele miejsc, którerequire()lubinclude() WP_CONTENT_DIR. 'coś';

3
Są przypadki, w których treść$_SERVERmoże być całkowicie bezpieczna, ale ze względów bezpieczeństwa lepiej jest zawsze traktować ją jako niezaufane dane. W tym konkretnym przypadku należy na stałe zakodować katalog.


Nowy folder motywów

/mu-plugins/set-extra-themes-folder.php

Ponieważ nie ma WP_THEMES_*stałych, potrzebujemy funkcji register_theme_directory (), aby „ zarejestrować katalog zawierający motywy.
Próbowałem ustawić dodatkowy katalog na katalog główny, ale wyniki są zabawne (tzn .: nie działa).

<?php
/*
    Plugin Name: Set Extra Themes Folder
    Version: 1.0
    Description: Allows the directory - http://example.com/t - to be used as an extra theme's directory
    Plugin URI: http://wordpress.stackexchange.com/questions/1507
    Author: brasofilo
    Author URI: http://rodbuaiz.com
*/


/**
 * Remove the comment from the following line to know the correct path to put in register_theme_diretory()
*/
//add_action( 'admin_head', 'brsfl_alert_directory_path' );

function brsfl_alert_directory_path()
{
    echo '<script type="text/javascript">
        alert("Directory: '.$_SERVER['DOCUMENT_ROOT'].'");
    </script>';
}


/**
 * The following will enable the directory "t" to be used as an EXTRA Themes directory
*/
register_theme_directory( '/www/htdocs/username/public_html/t' );


/**
 * De-registering default scripts in wp-includes for CDN ones
*/
add_action('init', 'brsfl_init_scripts');

function brsfl_init_scripts() 
{
    if ( !is_admin() ) 
    {
        wp_deregister_script( 'jquery' );
        wp_deregister_script( 'swfobject' );
        wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js', false, '1.7.1' );
        wp_register_script( 'swfobject', 'https://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js', false, null, true );
        wp_enqueue_script( 'jquery' );
        wp_enqueue_script( 'swfobject' );
    }
}

Przesyła folder

/wp-admin/options-media.php

Zamiast http://example.com/uploadstego będzie http://example.com/m.
Odznaczenie Organize my uploads into...spowoduje wyświetlenie adresów URL zasobów bez WP .
Jeśli witryna jest uruchomiona, wyszukiwanie / zamiana musi zostać wykonane w bazie danych, a pliki muszą być przenoszone.
przesyła ustawienia folderów


Wtyczki i treść nagłówka

Patrz Cris_Oodpowiedź w niniejszym pytaniu i odpowiedziach.


Plik Readme.html

Patrz Rarstodpowiedź w niniejszym pytaniu i odpowiedziach.


Inne kroki

Jak zwykle motywy ThemeJungle mogą wywoływać określone włamania do motywu.
Jak ... TimThumb nie działa (!!! lol !!!).

brasofilo
źródło
1
Niestety, ThemeForest wydaje się, że podjęto kroki w celu rozwiązania tej kwestii . I z kilkoma miłymi pomocnymi dłońmi !
brasofilo
13

Jedyna poprawna odpowiedź: NIEMOŻLIWE

Tyle wysoko ocenionych odpowiedzi .... czas na wyrównanie rekordu. Cóż, prawda jest taka, że ​​jest to praktycznie niemożliwe, a nawet jeśli tak, życie jest prawdopodobnie zbyt krótkie, aby włożyć w to wysiłek. Każda odpowiedź, która promuje kroki, aby ukryć WP, to tylko strata czasu i wprowadzi cię w błąd, myśląc, że ukrywasz WP (to jest absurdalne).

1) Problemem nie są oczywiste wp-*adresy URL, meta generatora itp. Trudne problemy dotyczą wzorców powiązanych z wordpress, których system domowy nie będzie zawracał sobie głowy wdrażaniem takich jak strony autora, rok, miesiąc, dzień, użyj p = nnn jako prawidłowy parametr, mają formę komentarza z klasą komentarzy Wordpress, strukturą i nazwami linków, a następnie następuje autopromocja wtyczek buforujących i Yoast SEO oraz prawdopodobnie wielu innych wtyczek, które można zobaczyć tylko podczas sprawdzania samego HTML.

2) Istnieją inne niezliczone metody, które pokazują istnienie WP (i nie można tego pokonać):

  • Nawet nagłówek odpowiedzi php (jak zauważył Dan Gayle poniżej mojej odpowiedzi) zwraca konkretny nagłówek WP.

  • Każdy może po prostu zapytać o dziesiątki plików .php root: site.com/wp-cron.phplub site.com/xmlrpc.php(lub itp., Których nie można ukryć), a odpowiedź na nagłówek będzie 200zamiast 404 not found.

  • każdy może sprawdzić ma punkty końcowe json, aby uzyskać odpowiedź specyficzną dla WP.

  • Wewnątrz strony HTML wiele plików .csslub .jsplików ma określone frazy, które wyraźnie odnoszą się do WP.

  • Wewnątrz strony HTML łatwo jest znaleźć klasy elements / css, takie jak <div class="entry-content post-14"...itp. (Co jest bezpośrednią wskazówką, że używana struktura to WP)

  • Wewnątrz strony HTML łatwo zobaczysz uploadsfolder, a nawet jeśli zmienisz jego nazwę za pomocą twardego kodowania, wówczas część daty, taka jak uploads/2018/05/image.jpg(lub nawet image-315x225.jpg), pokazuje typową strukturę WP.

  • ponieważ wiele witryn jest teraz budowanych za pomocą MultiSite, wykorzystuje np. /site/2w linkach ...

  • ping do dowolnego pliku Readme wtyczek / motywów (wszystkie one zawierają), np. plugin-name/readme.txtzwracanie statusu 200.

  • i wiele, wiele innych rzeczy, których ty (a nawet profesjonaliści) nie będziesz w stanie ukryć i po prostu zmarnujesz swoje dni!


wniosek

I nawet jeśli włożysz wysiłek w oczyszczenie wszystkiego, co wskazuje, że jest to wordpress, może być konieczne powtórzenie lub przynajmniej ponowne sprawdzenie po każdej wtyczce lub aktualizacji rdzenia. Życie jest na to za krótkie.

Możesz wprowadzić w błąd niektóre spodnie, ale nie możesz ukryć się przed dobrym inspektorem. Jeśli robi się to jako środek bezpieczeństwa, to bezpieczeństwo przez zaciemnienie jest zawsze błędne, a jeśli wstydzisz się korzystania z wordpress, pozwól, że coś ci powiem - nikogo to nie obchodzi, a nawet nielicznym, którzy prawdopodobnie nie będą umieć sam to wymyślić.

Jedyną rzeczą, na którą powinieneś zwrócić uwagę, jest ochrona WP tak bardzo, jak to możliwe i monitorowanie jej regularnych aktualizacji.

Mark Kaplun
źródło
jedyna poprawna odpowiedź, chciałem to opublikować. Głosowałem za wszystkimi innymi odpowiedziami, ponieważ są one tylko mylącymi i marnującymi czas próbami osiągnięcia niemożliwego i nonsensownego celu. Jeśli mi pozwolisz, dodam 2 centy do twojej odpowiedzi.
T.Todua
pewnie, dawaj.
Mark Kaplun
Głosowałem również za tym. Marnowanie czasu na ukrywanie wp tylko dla bezpieczeństwa przez zaciemnienie. To nie tylko nie zadziała, ale może również potencjalnie zepsuć działanie źle wykonane.
Remzi Cavdar
10

Możesz mieć WordPress na jednym serwerze i zeskrobać zawartość z innego, w tym tylko potrzebną.

Jeśli potrzebujesz RSS, musisz zrobić to samo.

W rzeczywistości byłoby to jak wyświetlanie statycznych stron z proxy lub CDN, ale tylko tych bitów, które chcesz podać. Możesz wtedy po prostu użyć systemu komentarzy opartego na javascript, takiego jak Disqus.

Naprawdę niskie zużycie zasobów, ponieważ tutaj nie ma baz danych na serwerze obsługującym zawartość.

AndyBeard
źródło
@AndyBeard - To bardzo interesujący pomysł, ale wymagałoby dużo czasu na opracowanie, aby uzyskać coś wykonalnego. A może znasz projekt open source, w którym ktoś już to zrobił?
MikeSchinkel
4
Oto jedno rozwiązanie wordpress.org/extend/plugins/really-static - jest kilka innych
AndyBeard
7

Możesz utworzyć własny adres, aby zalogować się na swoim blogu. Nieużywając klasycznej ścieżki „myblog.com/wp-admin”, aby dostać się do pulpitu nawigacyjnego Ta strona pomoże ci w tworzeniu ukrytych loginów, jest to również dobre ze względu na środki bezpieczeństwa.

Więc ppl, który dołączy wp-admin do twojego bloga, nie będzie w stanie zgadnąć :)

Mireille Raad
źródło
Link jest nieaktualny i wtyczka została usunięta.
kaiser
2
@kaiser: Internet Archive Wayback Machine ma to (i, co zaskakujące, nawet zip);)
brasofilo
1
@kaiser brasofilo - dzięki facet za odpowiedź po odpowiedzi :) ja też to
trzymam
5

Oprócz powyższego musisz zablokować dostęp do różnych wp*plików i katalogów. Jeśli ktoś chciałby sprawdzić, czy korzystasz z WP, może zgadnąć, czy masz wp-settings.phplub czy może uzyskać dostęp do jakiegoś katalogu. Zwrócenie wartości 403 nie jest wystarczające, ponieważ informuje użytkownika, że ​​zasób istnieje; po prostu nie mają do niego dostępu.

Nie jestem ekspertem od apache, więc zadałem to pytanie przy błędzie serwera.

Avery Chan
źródło
3

Nie zapominaj, że wiele informacji nagłówka http, które są wysyłane wraz z twoją prośbą, może identyfikować Twoją witrynę jako działającą na WordPress. Na przykład sprawdzenie nagłówków w następujących witrynach jest oczywiste:

$ curl -I http://www.rollingstones.com/
Server: WP Engine/5.0

$ curl -I http://www.mattcutts.com
X-Powered-By: W3 Total Cache/0.9.1.3

$ curl -I http://blogs.reuters.com/us/
WP-Super-Cache: Served supercache file from PHP

Niektóre z nich są ustawione przez serwer, niektóre są ustawione przez wtyczki, więc nie ma jednego sposobu, aby powiedzieć, jak usunąć 100% z nich, ale jeśli używasz PHP 5.3, możesz użyć

header_remove("X-Foo");( http://www.php.net/manual/en/function.header-remove.php )

aby usunąć znany nagłówek PHP przed wypchnięciem treści. Nie mogę powiedzieć z całą pewnością, gdzie to umieścić (być może ktoś inny może podać tę informację), ale prawdopodobnie bezpiecznie jest umieścić ją na samej górze indeksu.php PRZED wszelkimi treściami wysyłanymi do przeglądarki.

Dan Gayle
źródło
3

Może to być trudne do osiągnięcia, jeśli jesteś nowym użytkownikiem php i mod_rewrite. Proponuję więc sprawdzić w części mojej odpowiedzi. Lub spróbuj sam, możesz użyć czegoś takiego do ukrycia struktury ścieżki wp-content / plugins:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^modules/(.*) /wp-content/plugins/$1 [L,QSA]
</IfModule>

Spowoduje to zmianę ścieżki do / modułów. Użyj czegoś podobnego dla innej struktury, możesz potrzebować zaawansowanych zapisów, zobacz http://httpd.apache.org/docs/current/mod/mod_rewrite.html, aby uzyskać dodatkowe informacje o mod_rewrite.

Jeśli wolisz coś po wyjęciu z pudełka, jest kilka fajnych wtyczek, niektóre komercyjne, również bezpłatne w repozytorium WordPress, sugeruję wypróbowanie WP Hide & Security Enhancer . Obejmuje to wiele rzeczy i pomaga zmienić prawie wszystko, aby WordPress był nierozpoznawalny. Oto niektóre funkcje kodu:

  • Niestandardowy adres administratora
  • Niestandardowy adres administratora
  • Zablokuj domyślny adres administratora
  • Zablokuj bezpośredni dostęp do folderu, aby całkowicie ukryć strukturę
  • Niestandardowa nazwa pliku wp-login.php
  • Zablokuj domyślny wp-login.php
  • Zablokuj domyślny wp-signup.php
  • Zablokuj interfejs API XML-RPC
  • Nowa ścieżka XML-RPC
  • Adres URL motywu z możliwością dostosowania
  • Nowy URL motywu podrzędnego
  • Zmień nazwę pliku stylu motywu
  • Niestandardowe wp-include
  • Blokuj domyślne ścieżki wp-include
  • Zablokuj defalt wp-content
  • Niestandardowe adresy URL wtyczek
  • Indywidualna zmiana adresu URL wtyczki
  • Blokuj domyślne ścieżki wtyczek
  • Nowy adres do przesłania
  • Zablokuj domyślne adresy URL przesyłania
  • Usuń wersję wordpress
  • Blok Meta Generatora
  • Wyłącz emoji i wymagany kod javascript
  • Usuń tag pingback
  • Usuń wlwmanifest Meta
  • Usuń rsd_link Meta
  • Usuń wpemoji

i wiele więcej..

WP-Silver
źródło
2

Nie chcę powtarzać opcji kodowania, ponieważ zostały one wyczerpująco omówione, druga opcja wiem, że działa to wtyczka, która ukrywa wp. Już wcześniej korzystałem z tej wtyczki zgodnie z zadowalającymi standardami. To się nazywa ukryj mój WordPress.

NJENGAH
źródło
2

Większość odpowiedzi koncentruje się na zasłonięciu WordPressa w kodzie źródłowym strony, ale nawet wcześniej WP ujawniło się już w nagłówku http standardowej instalacji. Po prostu wypróbuj własną witrynę na stronie takiej jak sniffer sieciowy (udawaj, że jest to IE 6 i poproś o nagłówek http 1.0), a zobaczysz, że wśród zwrotów jest:

<http://www.example.com/wp-json/>; rel="https://api.w.org/"

Ten ostatni jest linkiem do interfejsu API Wordpress.org . Jest dostępny, ponieważ interfejs API REST został zawarty w WP 4.4. Możesz go usunąć za pomocą tego wiersza na początku functions.php:

remove_action( 'template_redirect', 'rest_output_link_header', 11, 0 );

Wiele wtyczek, takich jak Jetpack z krótkimi linkami, może również wstawiać linki w nagłówku http. Mogą to zrobić, ponieważ WP ma interfejs API HTTP , który pozwala manipulować nagłówkami. Możesz użyć tego interfejsu do usunięcia wszystkich ustawień nagłówka za pomocą wtyczek, jeśli dodasz swoje działanie wystarczająco późno.

Na koniec możesz użyć interfejsu nagłówka .htaccess, aby przechwycić wszystko, co robi WP. Na przykład możesz uniemożliwić wysyłanie nagłówków linków, dołączając ten wiersz:

<IfModule mod_headers.c>
Header unset Link
</IfModule>
cjbj
źródło
0

Możesz dostosować motyw, aby wykluczyć wszystkie informacje WordPress. Usuń także metadżet i dowolny widget, który wyświetlałby informacje o platformie.

Osobiście wolę okazać moją wdzięczność, pokazując, że korzystam z WordPress.

James
źródło
17
Wdzięczność jest miła, ale nie odpowiada na podstawowe pytanie.
ZaMoose
-1

Możesz użyć wtyczki WPS Hide Login .
Logujesz się do swojego wordpress za pomocą wp-admin. Ale możesz zmienić wp-adminna niestandardowy za pomocą tej wtyczki.

Przykład:

Przed: http://example.com/wp-admin
Po: http://example.com/custom-text-to-login

fuxia
źródło