Php 如何重写规则,然后使用.htaccess重定向它
我想去掉.php并创建一个SEO友好的url。以下是场景: examplesite.com/platform/sign-in.php应在examplesite.com/platform/login中显示/访问/ 下面的规则使这种情况发生。现在我可以访问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-
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]