如何将我的默认wp-login.php重命名为登录?

时间:2017-05-25 12:13:11

标签: php wordpress .htaccess

我想将http://mysite/wp-login.php的网址重命名为http://mysite/login

以及http://mysite/wp-login.php?action=registerhttp://mysite/signup

我在.htaccess文件中使用了以下代码,但它不起作用

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /robin_site/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^login$ http://mysite/wp-login.php [NC,L]
RewriteRule . /robin_site/index.php [L]
</IfModule>

# END WordPress

那么是否有可能请帮助我?

1 个答案:

答案 0 :(得分:0)

你的问题仍然有点模糊,所以这只是猜测。

首先,规则的顺序(及其相关条件)很重要,因为它们将从上到下进行尝试。此外,条件属于紧随其后的规则。

由于这是一个Wordpress网站,我认为以下两个规则和条件属于一起

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /robin_site/index.php [L]

新规则看起来不错,但如果将放在上述规则之后,则永远不会触发。要产生任何效果,您必须将它放在开头。此外,除非您要强制http或重定向到特定主机,否则无需为方案和主机添加前缀

RewriteRule ^login$ /wp-login.php [NC,L]

所以,所有规则一起,前面的新规则给出了

RewriteRule ^login$ /wp-login.php [NC,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /robin_site/index.php [L]