您好我需要重写我的网址:
我有两个文件夹:folder1/file.php
我在地址栏中只需要“文件”
:folder2/file.php
我在地址栏中只需要“file2”
我在root中获得了其他文件
当我使用
时RewriteCond %{REQUEST_URI} !^/(folder1)
RewriteRule (.*) /folder1/$1 [L]
它正在运行但是如果我访问file2
,我就不能,因为它正在搜索folder1/file2.php
并且找不到它!
如果我尝试访问index.php
,则会搜索folder1/index.php
我知道如何删除文件扩展名,但我找不到如何正确重写我的文件夹。
答案 0 :(得分:1)
您必须设置条件来检查文件中是否也存在文件:
RewriteCond %{DOCUMENT_ROOT}/folder1/$1 -f [NC]
RewriteRule ^(.*)$ /folder1/$1 [L]
RewriteCond %{DOCUMENT_ROOT}/folder2/$1 -f [NC]
RewriteRule ^(.*)$ /folder2/$1 [L]
这要求您的文件名在两个目录中都是唯一的,如果它们中都包含somefile.php
,则会失败。