it-swarm-ko.tech

Wp-admin의 이름을 사용할 수 있습니까?

Wp-admin 폴더의 이름을 바꿀 수 있습니까?

나는 이름을 바꿀 수 있다는 것을 알고 있지만, 코드에 의해지지되지 않는다면 많은 것들이 깨질 것입니다.

사용자 지정 폴더 이름을 사용하면 약간 더 안전하고, 모호함으로 보안이 강화됩니다.

69
Adam Dempsey

불행히도 현재 가능하지 않으며, 이것을 보면 wp-hackers 목록의 최근 스레드trac의이 티켓 =.

이것을 다시보고 싶다면 다음과 같이 제안합니다.

  1. 귀하의 사례를 제시하십시오 wp-hackers 그러나 귀하의 유스 케이스는 "모호함을 통한 보안"이 아닌 양호하고 그렇지 않으면 위와 같이 격추됩니다.

  2. 같은 경고로 trac ticket 에 인수를 제시하십시오.

  3. 더 좋은 방법은 패치 를 원하는 기능을 사용할 수 있도록 trac에 업로드하십시오. 일이 이미 끝났을 때 거절하는 것은 훨씬 어렵습니다 (물론, 그들은 "예"라고 말하는 것보다 자주 "아니오"라고 말하는 것을 선호합니다.

38
MikeSchinkel

아니요, 폴더의 이름을 바꿀 수 없습니다. 경로는 WordPress의 소스를 통해 여러 위치에 하드 코딩되어 있습니다.

어둠 속에서의 보안은 실제로 보안이 아닙니다.

11
Viper007Bond

사람들은 계속이 질문을하지만 사람들은 이것을 계속해서 중복으로 표시합니다. 그러나 이것에 대한 대답은 실제로 질문에 대한 답이 아닙니다.

WordPress의 관리자 이름을 바꾸려면 두 단계를 수행해야합니다.

다음 코드에서는 대시 보드를 새로운 wp-admin의 이름으로 사용하고 있습니다. 아래 코드의 대시 보드를 새 관리자의 이름을 지정하려는 것으로 변경하십시오.

먼저 wordpress에 관리자 URL을 변경하라고 지시해야합니다.

2558 wp-includes/link-template.php 는 관리 URL을 dertermines하는 코드입니다.

admin_url 필터를 사용하면 다음 기능을 사용하여 관리자의 URL을 성공적으로 변경할 수 있습니다.

function my_custom_admin_url($path) { 
    return str_replace('wp-admin', 'dashboard', $path); 
}
add_filter('admin_url', 'my_custom_admin_url');

이렇게하면 새 URL이 무엇인지 테스트 할 수 있습니다.

function whats_my_admin_url() {
    $url = admin_url();
    echo '<pre><code>'; print_r( $url ); echo '</code></pre>';
    }
add_action( 'admin_notices', 'whats_my_admin_url' );

그러나 관리자를 통해 클릭 할 때 모든 것이 작동하지 않으며 일부 링크가 404를 찾지 못하거나 비슷한 것을 알 수 있습니다.

둘째로, 당신의 wordpress root 디렉토리에있는 .htaccess를 바꾸고 다른 것들보다 먼저 다음을 추가하십시오.

#CUSTOM ADMIN URL REWRITE
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^dashboard[^/]*$ dashboard/ [R=301,L]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^dashboard(.*)$ wp-admin$1? [QSA,L,NE]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^wp-admin/?$ / [NE,R=404,L]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^wp-admin/(.*)$ dashboard/$1 [QSA,R=301,L,NE]
</IfModule>
#CUSTOM ADMIN URL REWRITE

이제는 .htaccess를 편집 할 때 전문가가 아니므로 일부는 필요하지 않을 수도 있습니다. 그러나, 나는 그것이 작동하지 않는 것을 결코 발견하지 못했다.

여기 모든 것이 있습니다. 파일을 만들고 플러그인 폴더 나 mu-plugins 폴더에 드롭하십시오. 대시 보드의 모든 인스턴스를 원하는 관리자 URL로 변경해야 함)

<?php
/**
 * Plugin Name: Change My Admin URL
 * Plugin URI: http://wordpress.stackexchange.com/questions/106/can-i-rename-the-wp-admin-folder
 * Description: Changes the admin url where wp-admin becomes dashboard (or whatever you change it to)
 * Version: 1.0
 * Author: Bryan Willis
 * Author URI: http://profiles.wordpress.org/codecandid
 * License: GPL2
 */

/* 

#CUSTOM ADMIN URL REWRITE FOR HTACCESS
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^dashboard[^/]*$ dashboard/ [R=301,L]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^dashboard(.*)$ wp-admin$1? [QSA,L,NE]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^wp-admin/?$ / [NE,R=404,L]
RewriteCond %{QUERY_STRING} (.*)$
RewriteRule ^wp-admin/(.*)$ dashboard/$1 [QSA,R=301,L,NE]
</IfModule>
#CUSTOM ADMIN URL REWRITE

*/

function my_custom_admin_url($path) { 
    return str_replace('wp-admin', 'dashboard', $path); 
}
add_filter('admin_url', 'my_custom_admin_url');

문제?

나는이 방법을 사용하여 1 년이 넘게 들어 본 적이 없다. wp-admin은 여전히 ​​어떤 종류의 멍청이든지 작동하지만, 무엇보다 예방 조치가 더 중요하다는 것을 알 수 있습니다. wp-admin을 차단하거나 리디렉션하려고 할 때로드되지 않는 일부 장소에서 wp-admin을 하드 코딩 한 플러그인이 있습니다. htaccess로이 작업을 수행 할 수있는 방법이있을 것이라고 확신하지만 성공적으로 파악하지 못했습니다. 또한, 이것은 다중 사이트 또는 그와 같은 어떤 것에 대해서도 테스트되지 않았습니다.

업데이트 : 대안 접근법

이것은 꽤 비슷하지만, 어떤 이유로 나는 위의 모든 대답을 시도하지 않았다.

.htaccess에 추가

RewriteRule ^admin/(.*) wp-admin/$1?%{QUERY_STRING} [L]

new-admin.php라는 mu-plugins 폴더에 파일을 생성하고 거기에 추가하십시오 :

<?php
define('WP_ADMIN_DIR', 'admin');
defined('SITECOOKIEPATH') || define('SITECOOKIEPATH', preg_replace('|https?://[^/]+|i', '', get_option('siteurl') . '/' ) );
define( 'ADMIN_COOKIE_PATH', SITECOOKIEPATH . WP_ADMIN_DIR);

add_filter('site_url',  'wpadmin_filter', 10, 3);
 function wpadmin_filter( $url, $path, $orig_scheme ) {
  $old  = array( "/(wp-admin)/");
  $admin_dir = WP_ADMIN_DIR;
  $new  = array($admin_dir);
  return preg_replace( $old, $new, $url, 1);
}

참고 :이 접근 방식은 일부 호스트에서 더 잘 작동하는 것처럼 보였지만 wp-admin 링크를 새 관리 URL로 리디렉션하지 않는 문제가있었습니다. 여기 아래에서 시도한 접근 방식이 있습니다. 동안이 아래에 작동하지 않습니다나는 그것이 올바른 길에 있다고 생각합니다. 나는 어떤 고리를 사용해야하는지 완전히 모르겠습니다. htaccess가 더 나은 대안 일지 모르지만 그런 식으로 시도했을 때 리디렉션 루프가 계속 발생했습니다.

add_action('init', 'redirect_wp_admin_url_to_404');
function redirect_wp_admin_url_to_404(){
  $redirect_to = $_SERVER['REQUEST_URI'];
  if(count($_REQUEST)> 0 && array_key_exists('redirect_to', $_REQUEST)){
    $redirect_to = $_REQUEST['redirect_to'];
    $check_wp_admin = stristr($redirect_to, 'wp-admin');
    if($check_wp_admin){
      wp_safe_redirect( '404.php' );
    }
  }
}
11
Bryan Willis

WordPress에서 공식적으로 지원하는 방법은 다음과 같이 사이트를 루트에 유지하면서 WordPress 설치 파일을 하위 디렉토리로 이동하는 것입니다.

사이트 URL : http://my-blog.com

관리 URL : http://my-blog.com/7nxnkkugrdzm/wp-admin

이렇게하면 관리자 URL을 자유롭게 변경할 수는 없지만 원하는 것을 사용하여 prefix 할 수 있음을 의미합니다. 이것은 보안 관점에서도 마찬가지입니다. 또한 모든 WordPress 설치 파일을 사용자가 알 수없는 위치로 옮길 수 있다는 이점이 있으므로, wordpress 강화 전략의 일부 여야합니다.

WordPress 코덱에서 : WordPress 자체 디렉토리 제공

또한이 보안 체계를 Obscure URL이라고하지만, 불분명 한 보안과는 다릅니다. Obscure URL은 암호만큼이나 완벽하게 유효한 보안 체계이며, security by obscurity는 입증되지 않은 비밀 절차를 사용합니다.

암호와 마찬가지로 동일한 경고가 적용됩니다. 7nxnkkugrdzm가 아닌 happy-snappy-admin와 같은 사용자 지정 폴더를 호출하십시오. 또한 사용자가 관리자 URL이 비밀임을 알고 있어야합니다.

9
cmc

실제로 여기에 매우 좋은 튜토리얼이 있습니다.

소스 코드에서 WordPress 정보를 숨기는 방법 미러

Wp-content의 이름을 바꾸고 wp-admin의 이름을 바꾸고 WordPress에서 생성기 태그를 제거하는 방법이 포함되어 있습니다.

이 튜토리얼은 소스 코드에서 명백한 증거 또는 표시를 변경하고, 사이트에서 WordPress 정보를 효과적으로 제거합니다 .

폴더 이름, wp-admin 로그인 URL을 변경하는 방법과 사람들이 직접 갈 수 있도록 login.php가 기본 사이트로 리디렉션되는지 확인하십시오.

7
Graeme

구독자 수준의 사용자가 wp-admin 디렉토리를 보지 못하도록하려면 독립형 버전의 login/registration 및 profile/edit 페이지를 자신의 디렉토리에 만들 수 있습니다. 그런 다음 htaccess 또는 IP 제한을 통해 관리 폴더를 보호 할 수 있습니다. (이 작업을 수행하면 admin-ajax 파일에 대한 예외를 만들어야하는데, 일부 플러그인은이를 사용하여 AJAX 기능을 추가합니다).

이 접근법은 사용자가 원하는 "모호함"을 제공합니다 (실제로 많이하지는 않지만 종종 클라이언트와 관리자의 기분을 좋게 만듭니다). 또한 관리자에 대한 액세스를 제한하여 실제 보안을 추가합니다. 게다가 솔직히 "/ login"이라고하는 URL이 "wp-login.php"보다 훨씬 좋게 보입니다.

이것이 사이트를 방탄하게 만들지는 않습니다. 그러나 근사하고 기본적인 향상입니다.

6
MathSmath

관리 제어판을 잠그는 한 가지 방법은 .htaccess 규칙을 사용하는 것입니다. .htaccess 파일을 wp-admin 디렉토리의 루트에 추가하기 만하면됩니다. 이 파일을 추가 한 후에 다음 규칙을 추가하여 모든 IP 주소를 거부하고 IP 만 허용하십시오.

http://wp.tutsplus.com/tutorials/10-steps-to-securing-your-wordpress-installation/

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
whitelist address
allow from <IP ADDRESS HERE>
</LIMIT>
2
Josh

WordPress 설치에 보안 계층을 추가하기 위해 wp-admin의 이름을 바꾸려면 Roots/Bedrock WordPress Boilerplate 를 사용해보십시오. 웹 이외의 파일에 대한 액세스를 제한하기 위해 웹 루트를 격리하는 데 도움이 될 수 있습니다. 또한 wp-content/app /에 이름을 바꾸는 것과 같은 추가 하위 기능을 WordPress의 자체 하위 디렉토리에 배치하여 전체 WordPress 핵심을 구성/보안하는 데 도움이 될 수 있습니다.

  • Composer로 종속성 관리
  • 환경 특정 파일을 가진 쉬운 WordPress 윤곽
  • Dotenv의 환경 변수
  • Mu 플러그인 용 오토로더 (mu 플러그인으로 일반 플러그인 사용)
  • 강화 된 보안 (wp-password-bcrypt로 분리 된 웹 루트 및 보안 암호)

GitHub Repo 를 확인하여 자세한 사용법을 확인할 수도 있습니다.

1
Carl Alberto

IFRAME에서 WP-ADMIN에 관해 무엇을하고 있습니까?

Wp 대시 보드에서 "Admin"이라는 새 페이지를 만드십시오. 예 : yourdomain/admin /

header.phppage.php 및/또는 footer.php를 사용하여 case 문을 작성하여 필요하지 않은 템플릿의 내용을 비활성화 할 수 있습니다.

<?php
if(!is_page('admin')): //if not the admin page.

//wrap code not needed or wanted.

else: ?>

<style type="text/css">
    .responsive-iframe {
    position: relative;
    padding-bottom: 56.25%; /*16:9*/
    height: 0;
    overflow: hidden;

    iframe {
        position: absolute;
        top:0;
        left: 0;
        width: 100%; //or 100vw
        height: 100%; //or 100vh
    }
}   
</style>

<div class="responsive-iframe">
<iframe seamless="seamless" scrolling="yes" src="http://yourdomain/wp-admin/" frameborder="0" allowfullscreen></iframe>
</div>

<?php 
endif;

이것은 꽤 아니지만 어느 정도는 url에서 wp-admin을 숨길 수 있습니다. 또 다른 방법은 마스크 URL을 사용하는 도메인 전달을 사용하는 것입니다.

0
samjco
0
edelwater

아니요, 짧은 코드 또는 htaccess hack으로 wp-admin 폴더의 이름을 바꿀 수 없습니다.

과거에는 Coda (편집자는 내가 사용하는)를 통해 "wp-admin, wp-content ... etc"라는 완전한 폴더 검색을 수행하여 클라이언트에 대해 동일한 작업을 수행했으며 "wp-"를 파일.

그 후에는 설치할 수 있지만 다음을 수행 할 수 있습니다.
설치하려는 플러그인에서 똑같이해야합니다. 새 버전에서 "wp-"태그를 지워 수동으로 코어를 업데이트해야합니다.

모든 방법으로 내가 이런 식으로 할 것을 제안하지 않는다면 그대로두고 사용자/클라이언트에게 더 나은 경험을 제공하기 위해 사용자 로그인/등록/프로필 페이지를 구현하려고 시도하십시오.

Cozmolabs의 Cristian 아주 좋은 설명서를 작성했습니다. 코드를 약간 편집하여 WordPress 테마에서 실행할 수 있습니다.

프론트 엔드에서 포스트 양식을 추가하여 포스트를 작성하는 관리자 및 사용자가 프론트 엔드에서 포스트를 수행 할 수 있습니다.

프론트 엔드 게시 페이지를 만드는 방법에 대한 예제와 코드를 볼 수 있습니다. 프런트 엔드 게시 제출

또한 당신은 Nice plugins를 여기에서 볼 수 있습니다 그것은 더 많은 기능과 동일합니다.

0
Philip