如何使用htaccess将wp-admin-url重写到其他文件夹


how to rewrite wp-admin url to some other folder using htaccess?

我试着重写一个简单的RewriteRule,但我想结果不太好。我在wordpress wp-admin文件夹中创建了一个htaccess文件,并尝试在本地主机中重命名wp-admin目录名。这是我尝试的代码

RewriteEngine On    # Turn on the rewriting engine
RewriteRule ^wp-admin$ hello

只是为了测试,我在本地主机上做了这个。我想从简单模式而不是复杂模式开始,所以我尝试了其他简单模式wp-admin和替换为hello

  RewriteEngine On    # Turn on the rewriting engine
  RewriteRule wp-admin hello

当我转到http://localhost/my_site/hello时,我无法直接指向wp管理员,因为我收到了404错误。当我尝试http://localhost/my_site/wp-admin时,出现内部服务器错误。

我认为重写规则在我的尝试中不好。我还有一个疑问,应该把.htaccess文件放在wp-admin目录中,或者放在my_site的我的站点根目录中,还是应该放在每个试图动态更改文件夹名称的目录中。

我在这里干什么。请帮忙吗?

RewriteRule ^hello(.*)$ wp-admin$1 [QSA]

将更改:

http://yourdomain.com/yourwp/hello
http://yourdomain.com/yourwp/hello/path/in/admin

http://yourdomain.com/yourwp/wp-admin
http://yourdomain.com/yourwp/wp-admin/path/in/admin

QSA标志对兼容性很有用。

这是我的wordpress.htaccess,只有一个自定义重定向,但你可以理解这个想法:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index'.php$ - [L]
RewriteRule ^login/?$ /wp-login.php [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress