Change the URL for the admin panel: /admin/ will be no more accessible. The goal is to avoid hacks.
Let say we want to change the entry of backend from /admin to /config, that is the web user is deny when visit http://www.example.com/admin, but allow to visit http://www.example.com/config
1. Modify the settings.php add the code to the end of this file :
代码
/**
*
* Change the admin link from / admin to / config
*
*/
function custom_url_rewrite_outbound( & $path , & $options , $original_path ) {
global $user ;
if (preg_match(' | ^admin( / . * ) | ', $path , $matches )) {
$path = 'config'. $matches [ 1 ];
}
if ( $path == 'admin') {
$path = 'config';
}
if (preg_match(' | ^user( / . * ) | ', $path , $matches )) {
$path = 'usr'. $matches [ 1 ];
}
if ( $path == 'user') {
$path = 'usr';
}
}
function custom_url_rewrite_inbound( & $result , $path , $path_language ) {
global $user ;
if (preg_match(' | ^config( / . * ) | ', $path , $matches )) {
$result = 'admin'. $matches [ 1 ];
}
if ( $path == 'config') {
$result = 'admin';
}
if (preg_match(' | ^usr( / . * ) | ', $path , $matches )) {
$result = 'user'. $matches [ 1 ];
}
if ( $path == 'usr') {
$result = 'user';
}
if ( $path == 'admin') {
$result = ' 404 ';
}
if (preg_match(' | ^admin( / . * ) | ', $path , $matches )) {
$result = ' 404 ';
}
}
*
* Change the admin link from / admin to / config
*
*/
function custom_url_rewrite_outbound( & $path , & $options , $original_path ) {
global $user ;
if (preg_match(' | ^admin( / . * ) | ', $path , $matches )) {
$path = 'config'. $matches [ 1 ];
}
if ( $path == 'admin') {
$path = 'config';
}
if (preg_match(' | ^user( / . * ) | ', $path , $matches )) {
$path = 'usr'. $matches [ 1 ];
}
if ( $path == 'user') {
$path = 'usr';
}
}
function custom_url_rewrite_inbound( & $result , $path , $path_language ) {
global $user ;
if (preg_match(' | ^config( / . * ) | ', $path , $matches )) {
$result = 'admin'. $matches [ 1 ];
}
if ( $path == 'config') {
$result = 'admin';
}
if (preg_match(' | ^usr( / . * ) | ', $path , $matches )) {
$result = 'user'. $matches [ 1 ];
}
if ( $path == 'usr') {
$result = 'user';
}
if ( $path == 'admin') {
$result = ' 404 ';
}
if (preg_match(' | ^admin( / . * ) | ', $path , $matches )) {
$result = ' 404 ';
}
}