我只能找到mod重寫示例/教程查詢的,所以有人可以幫助我這個。mod改寫目錄縮短
我想這
http://website.tld/Folder1/Folder2/Folder3/Folder4/Folder5/File.exten
改造成
http://website.tld/Folder4/File.exten
Folder4和Folder5多個目錄,而文件夾1-3保持不變。 另外File.exten也應該在重寫中改變。 謝謝。
我只能找到mod重寫示例/教程查詢的,所以有人可以幫助我這個。mod改寫目錄縮短
我想這
http://website.tld/Folder1/Folder2/Folder3/Folder4/Folder5/File.exten
改造成
http://website.tld/Folder4/File.exten
Folder4和Folder5多個目錄,而文件夾1-3保持不變。 另外File.exten也應該在重寫中改變。 謝謝。
我會用這樣的:
RewriteRule ^([^/]+)/([^/]+)$ Folder1/Folder2/Folder3/$1/Folder5/$2 [QSA,NC]
([^/]+)
是因爲^(.*)/(.*)$
更好地將匹配http://website.tld/somedir/somedir2/somedir3/
這應該工作:
RewriteRule ^(.*)/(.*)$ Folder1/Folder2/Folder3/$1/Folder5/$2 [QSA,NC]
如果「Folder5」並不總是在重寫fil路徑中,則可以將其忽略。只要你在查詢中使用諸如「Folder4/Folder5」之類的東西,重寫就可以讓你訪問該文件夾。因此我在我的正則表達式中使用(。*)而不是([^ /] +)。 – 2ndkauboy 2010-05-31 22:12:58
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^grab /public/files/download/download.php
此規則將改變這個用戶的URL ..
http://mysite/grab?file=my.zip
服務器端,進入..
http://mysite/public/files/download/download.php?file=my.zip
如果用戶只是要求/Folder4/File.exten,你怎麼來弄清楚Folder5的價值? – grossvogel 2010-05-31 21:59:48
我會覺得,該文件夾總是相同的。如果不是這樣,那麼選擇這種結構會有更復雜的正則表達式。 – 2ndkauboy 2010-05-31 22:01:22