2012-10-29 50 views
2

我希望你能幫助我與我的小問題:htaccess的,重定向用正則表達式:文件夾可變

我有一個網址,像這樣:

www.blabla.com/images/q2uj89j2fq89hf943ghf74ßgq3789fg43/blue.jpg 

裏面的「圖片」文件夾中,我有PHP Skript應該將字符串「images /」和後面的「/」之間的所有內容都作爲GET變量。因此,像這樣:

www.blabla/images/script.php?param=q2uj89j2fq89hf943ghf74ßgq3789fg43 

目前,我有以下htaccess文件:

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^(.*)$ script.php?param=$1 [QSA,L] 

但有了這個,我得到的東西是這樣的:

www.blabla/images/script.php?param=q2uj89j2fq89hf943ghf74ßgq3789fg43/blue.jpg 

,顯然我只想要得到一切,直到下一個/

在此先感謝

回答

2

.允許任何字符匹配和$明確說,你要一路字符串的結尾相匹配。

您可以使用否定字符類而不是.並刪除$。取反字符類將匹配任何字符除了斜線(所述^馬克否定字符類):

RewriteRule ^([^/]*) script.php?param=$1 [QSA,L] 

因爲regex重複是通過默認的貪婪,這將需要在儘可能多的字符可能的。這是一切,直到下一個斜線。

+0

非常感謝。正是我想要的。最後.. :) –

相關問題