Php 如何重写规则,然后使用.htaccess重定向它

Php 如何重写规则,然后使用.htaccess重定向它,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我想去掉.php并创建一个SEO友好的url。以下是场景: examplesite.com/platform/sign-in.php应在examplesite.com/platform/login中显示/访问/ 下面的规则使这种情况发生。现在我可以访问examplesite.com/platform/sign-in.php,只需访问examplesite.com/platform/login/ RewriteRule ^platform/login/?$ platform/sign-

我想去掉.php并创建一个SEO友好的url。以下是场景:

examplesite.com/platform/sign-in.php应在examplesite.com/platform/login中显示/访问/

下面的规则使这种情况发生。现在我可以访问
examplesite.com/platform/sign-in.php
,只需访问
examplesite.com/platform/login/

RewriteRule    ^platform/login/?$    platform/sign-in.php [NC,L]
examplesite.com/platform/login/
现在是我的登录页面,但此页面保持不变。我也可以访问
examplesite.com/platform/sign-in.php
。 因此,如果用户访问
examplesite.com/platform/login/
,我尝试将其重定向到
examplesite.com/platform/sign-in.php

Redirect 301    /platform/sign-in.php /platform/login/
现在,当我访问
examplesite.com/platform/sign-in.php时,它说重定向太多了,什么也不加载

如何解决这个问题?
examplesite.com/platform/sign-in.php应自动重定向到
examplesite.com/platform/login/
尝试以下操作:

RewriteRule    ^platform/login/?$    platform/sign-in.php [NC,L]
RewriteRule ^platform/login/?$ /platform/sign-in.php [NC,L]

RewriteCond %{THE_REQUEST} \s/platform/sign-in.php
RewriteRule ^platform/sign-in.php /platform/login/ [NC,R=301,L]