htaccess - 从 url 中删除 .php 扩展名

htaccess - remove .php extension from url

我尝试了很多代码从 url
中删除 .php 例如 - ht.abuena.net/presto.php -> ht.abuena.net/presto
反之亦然 - 在内部

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ .php [NC,L]

没有任何效果 - url 保持不变
通过右键单击按钮 Reload 并选择 - Empty Cache and Hard Reload 重新加载页面 - 所以我希望缓存已清除

此处为现场示例 - here

使用您展示的示例,请尝试遵循 htaccess 规则文件。

请确保在测试您的 URL 之前清除您的浏览器缓存。

RewriteEngine ON
RewriteBase /

RewriteCond %{ENV:REDIRECT_STATUS} ^$
##using THE_REQUEST variable for condition check.
RewriteCond %{THE_REQUEST} \s/([^.]*)\.php/?\s [NC]
##Performing external redirect here.
RewriteRule ^  %1? [R=301,L]

##Performing rewrite for non-existing pages.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/.php -f
RewriteRule ^(.*)/?$ /.php [QSA,L]

在我的例子中,如果项目是核心 PHP 一个,我在 .htaccess 文件中使用以下行:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ .php [NC,L]