2014-10-11 87 views
0

我已经看到了很多关于如何重定向很多URL的答案,以便删除任何.php扩展名,但是这对我的冲突造成了一些麻烦。如何仅使用.htaccess仅为特定文件删除.php扩展名?

RewriteRule ^quote/([a-zA-Z0-9]+)/$ index.php?id=$1 
RewriteRule ^quote/([a-zA-Z0-9]+)$ index.php?id=$1 

我已经很重定向/quotes/1/quotes/2等,以/index.php?id=1/index.php?id=2等,但我真正想要做的是简单地匹配/random/并将其指向/random.php并没有对现有的答案似乎是具体的。

谢谢。

+0

所以你处理所有业务逻辑的'index.php'一样,如果'isset($ _ GET [ '身份证']){.. }'?那么,你现在真正应该关注的是任何流行的php框架。这是一个非常基本的东西叫**路由和控制器** – Yang 2014-10-11 01:08:22

回答

1

要使用.htaccess使用该删除.php扩展:

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

谢谢,这似乎对'/随机'工作很好,但有什么办法让'/随机/'工作与尾部斜杠以及? – phocks 2014-10-11 00:44:38

+0

@phocks这应该现在工作! – Rizier123 2014-10-11 00:48:49

+0

@ Rizier123难道你不想捕获任何'$ 1'的工作?并且添加对“RewriteCond%{REQUEST_FILENAME}!-d”目录的检查是一个好主意 – Cheery 2014-10-11 00:53:23

相关问题