htaccess相同的文件夹和文件名

时间:2016-07-04 23:42:24

标签: apache .htaccess url-rewriting

如何设置可以区分文件与同名文件夹的htaccess?

我在我的网站下

index.php
team.php
team/Justin.php
team/martin.php...

和一个带有URL Rewrite的htaccess来制作漂亮的url并删除.php

RewriteEngine On

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

不幸的是,当我访问网址mywebsite.com/team时,它直接进入团队文件夹... 我想

  

mywebsite.com/team转到 - > team.php页面

     

mywebsite.com/team/xxx转到 - >文件夹中的任何页面   队。

谢谢,

1 个答案:

答案 0 :(得分:0)

这是因为 / team 映射到现有目录。当您请求 / team 服务器将uri更改为 / team / 添加目录斜杠时,它会转到目录。

您必须关闭DirectorySlash。

将以下行添加到.htaccess

DirectorySlash off

这样您就可以 / team 访问 /team.php 而不会斜杠。

您可以使用此htaccess:

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