.htaccess 将file.php硬重定向到/file(当/file已被透明重定向到/file.php时)

.htaccess 将file.php硬重定向到/file(当/file已被透明重定向到/file.php时),.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我已经将/file的请求透明地重定向到/file.php——访问/file显示/file.php。我的.htaccess: RewriteEngine on RewriteBase / RewriteRule ^([a-zA-Z]+)/?$ $1.php [L] 现在要将/file.php硬重定向到/file——如果我点击/file.php,地址栏中的URL必须显示/file。尝试了以下操作,但无效: RewriteEngine on RewriteBase / RewriteRule ^([

我已经将
/file
的请求透明地重定向到
/file.php
——访问
/file
显示
/file.php
。我的.htaccess:

RewriteEngine on
RewriteBase /
RewriteRule ^([a-zA-Z]+)/?$ $1.php [L]
现在要将
/file.php
硬重定向到
/file
——如果我点击
/file.php
,地址栏中的URL必须显示
/file
。尝试了以下操作,但无效:

RewriteEngine on
RewriteBase /
RewriteRule ^([a-zA-Z]+)\.php$ $1 [R]
RewriteRule ^([a-zA-Z]+)/?$ $1.php [L]

有什么帮助吗?

您需要根据用户向服务器发送的请求执行重写。像这样的方法应该会奏效:

RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]+\s/([a-zA-Z]+)\.php
RewriteRule ^([a-zA-Z]+)\.php$ /$1 [R=301,L]

RewriteRule ^([a-zA-Z]+)/?$ $1.php [L]