php扩展无法工作

php扩展无法工作,php,html,apache,.htaccess,mod-rewrite,Php,Html,Apache,.htaccess,Mod Rewrite,我发现了很多关于删除URL中的.php扩展名的教程和问题。我已经尝试了很多例子,直到现在它仍然不起作用。这让我发疯。我还想把尾部斜杠放在URL的末尾,但首先我想先做到这一点。目前,我已经尝试了以下解决方案: Options -MultiViews RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ $1.p

我发现了很多关于删除URL中的.php扩展名的教程和问题。我已经尝试了很多例子,直到现在它仍然不起作用。这让我发疯。我还想把尾部斜杠放在URL的末尾,但首先我想先做到这一点。目前,我已经尝试了以下解决方案:

Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L]
还有:

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

没有什么是好的。我使用Windows7和XAMPP在笔记本电脑上工作。我只是创建了.htaccess文件并将其放在localhost/myFolder中。当我在浏览器中运行时,根据我的解决方案,(I)有时找不到页面,(ii)有时出现服务器内部错误。此外,当我运行例如localhost/myFolder/index时,URL将重定向到localhost/index,而不带myFolder。我想知道为什么会发生这种情况,希望有人能给我链接或解决方案,因为我尝试了这么多。提前谢谢。

以下内容对我来说很好:

RewriteEngine On
RewriteBase /myFolder
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*[^/])/?$ $1.php [L]

在/myFolder/.htaccess for hidden.php extensin中尝试以下代码:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/myFolder/$1.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

您的问题的解决方案:

Options +MultiViews
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/myFolder/$1.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

我刚刚替换了您的
-
登录
多视图
,它开始在我的本地主机上运行

RewriteCond%{REQUEST\u FILENAME}.php-f RewriteRule.*\。php$%{REQUEST_FILENAME}.php[L,QSA]请重试this@KristerAndersson谢谢,对不起,我不明白重写第二个反向参考部分,你能展示一下这个例子吗?我是新手。@如果我在RewriteCond%{REQUEST_FILENAME}上遇到您的示例服务器错误。RewriteEngine-f RewriteRule^([^\.]+)$$1.php[NC,L]它的工作方式看起来像yoursite.com/test.php到yoursite.com/test@Asif谢谢,但还是一样的问题,它将我重定向到localhost/index,而不是localhost/myFolder/index。即使我手动放置“myFolder”,页面仍显示未找到页面。谢谢,但它仍然无法工作。它将我重定向到localhost/page,而不是localhost/myFolder/page。现在我想知道应该把.htaccess文件放在哪里。我真的不知道是什么问题。您是否已取消对重写库的注释?将.htaccess文件放在您的
myFolder
目录中。是的,我已将其取消注释并放在myFolder目录中。奇怪,它不起作用。哇,像魅力一样工作!非常感谢你,我想这就是问题所在。我重新启动我的笔记本电脑,运行CCleaner,把你的代码和测试它,工作得很好!若你们不介意的话,如何在URL中添加尾随斜杠和catter GET变量?谢谢。谢谢,我没有在我的笔记本电脑前,所以我还不能尝试,稍后会尝试并向您更新。我有一些问题,为什么。htaccess会影响缓存?另外,如果我的web服务器运行Windows/Linux,这在两种环境下都能工作吗?谢谢你的解决方案,它对我不起作用。我可以看到“localhost/myFolder/page”的URL很好,但找不到该页面。我使用了克里斯特·安德森的解决方案。再次感谢。您只能使用一条规则,不能使用多条规则。在问题中发布完整的.htaccess。