如何隐藏我的PHP文件的扩展名

时间:2015-07-30 07:28:49

标签: php apache

我试图在我的托管服务器中隐藏我的php文件扩展名。在.htaccess文件中添加以下代码段。

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

但是当我尝试时,它不起作用。我也尝试在我的localhost.it做同样的事情也没有正常工作。

所以我必须对其进行任何其他更改吗?

2 个答案:

答案 0 :(得分:1)

对此的最佳解决方案是首先: 1. 将所有 .html 文件转换为 .php 2. 创建一个 .htaccess 来隐藏所有已知的 .php 扩展名

例如:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

注意:如果您的 .htaccess 文件顶部已经有 RewriteEngine on 命令,则无需在创建新命令时编写它。

这个方法还是无效的,因为当你访问localhost/login.php时,它会重定向到localhost/login。

所以你必须在单个文件中使用 php 来做到这一点!

答案 1 :(得分:0)

使用

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]