Php mod重写目录
我只能找到用于查询的mod rewrite示例/教程,所以有人可以帮我解决这个问题 我想要这个Php mod重写目录,php,mod-rewrite,directory,Php,Mod Rewrite,Directory,我只能找到用于查询的mod rewrite示例/教程,所以有人可以帮我解决这个问题 我想要这个 http://website.tld/Folder1/Folder2/Folder3/Folder4/Folder5/File.exten 转化为 http://website.tld/Folder4/File.exten Folder4和Folder5是多个目录,而文件夹1-3保持不变。 此外,File.ext在重写过程中也应该是可更改的。 谢谢。这应该可以: RewriteRule ^(.*)
http://website.tld/Folder1/Folder2/Folder3/Folder4/Folder5/File.exten
转化为
http://website.tld/Folder4/File.exten
Folder4和Folder5是多个目录,而文件夹1-3保持不变。
此外,File.ext在重写过程中也应该是可更改的。
谢谢。这应该可以:
RewriteRule ^(.*)/(.*)$ Folder1/Folder2/Folder3/$1/Folder5/$2 [QSA,NC]
我会用这样的方式:
RewriteRule ^([^/]+)/([^/]+)$ Folder1/Folder2/Folder3/$1/Folder5/$2 [QSA,NC]
([^/]+)
更好,因为^(.*)/(.*)$
将匹配http://website.tld/somedir/somedir2/somedir3/
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^grab /public/files/download/download.php
此规则将转换此用户的URL
服务器端,进入
这里说:如果用户只要求/Folder4/File.extn,您将如何计算Folder5的值?我想知道,文件夹总是一样的。如果不是,则可能会有一个更复杂的正则表达式来选择此结构。如果“Folder5”不总是在重写fil路径中,则可以将其忽略。不管怎样,只要在查询中使用类似“Folder4/Folder5”的内容,重写就可以让您访问该文件夹。因此,我在正则表达式中使用了(.*)而不是([^/]+)。